c語言程式 用遞迴法將整數n轉化成字串

2021-05-04 18:27:57 字數 5109 閱讀 6646

1樓:義昀欣

//舉例說明該函式流程,假如輸入123,123/10後得12,餘數是3

//再次執行convert函式,12/10得1,餘數是2//再次執行convert函式,1/10得0,餘數是1//至此,遞迴結束,開始列印數字,首先列印最後一次遞迴的結果1//然後列印倒數第二次的結果2

//最後列印3,輸出123

void convert(int n)

main()

convert(number); //執行遞迴函式}

2樓:匿名使用者

你這程式有錯誤哦,輸出結果是原序輸出

以下是我稍微修改的程式,及相應的註釋

#include

void convert(int n)

main()

convert(number); //呼叫遞迴函式convert()}希望能幫到你,可以繼續**!

3樓:井鈺

寫了一下,看基本符合你要求了,不過還有些可以改的下面是程式**:

#include

int gnn(int e)

return last;

}void fun(long int n,int n)else }

void main()

printf("轉換後的輸出為: ");

printf("\"");

fun(n,n);

printf("\n");

//getch();}

4樓:成紅微生英飆

while的條件是不對的

n%10!=0

如果n=10

就退出了!

n的值也沒改變

所以是死迴圈。

而且即使改正之後輸出的結果也是與原數相反的

5樓:enjoy冰心玉壺

我把你的程式改了一下,現在可以得到正確的答案了。先把源**複製在下面吧。

#include

#include

#include

#include

int fun(int number,int digit,char *str);

int main()

else

printf("the result is %s\n",string);

return 0;

}int fun(int number,int digit,char *str)

return 0;

}也是用的遞迴的方法,可以自己跑一下程式。再說一下問題吧,感覺你不太熟悉strcat()這個函式,其中的引數都應是char型指標變數,還有一些小的問題,比如函式返回值什麼的。你可以再看看書或者查一下。

執行結果如下:

6樓:牧羊人

將一個整數,轉化為與它等價的字串型別的資料。怎麼說,就是一個int n,它表示的數為321,那對應著的字串表示就是s[0]=3的acs碼,s[1]=2的asc碼, s[2]=1的asc碼。

7樓:匿名使用者

舉個例子,比如輸入的是123,呼叫convert函式,convert(123)->convert(12)->convert(1)->convert(0),返回至上層,即convert(1)函式裡繼續執行,s[0]=1%10+'0'='1';deep++;,再次返回上層函式裡執行,s[1]=12%10+'0'='2';deep++;繼續返回上層函式裡執行,s[2]=123%10+'0'='3';deep++;執行2完畢,返回至main函式。s[4]=0;puts(s)輸出字串123.

8樓:樂跑小子

下面是程式**:

#include

int gnn(int e)

return last;

}void fun(long int n,int n)else }

void main()

printf("轉換後的輸出為: ");

printf("\"");

fun(n,n);

printf("\n");

//getch();}

9樓:

#include

int deep=0;

char s[100]=;

void convert(int n)

int main()

convert(n);

s[deep]=0;

puts(s);

return 0;}

10樓:匿名使用者

**不明白啊?

if(n==0) 如果輸入0,則不用呼叫函式,直接輸出convert(n); 對於非0的進行遞迴轉換s[deep]=0; 置串結束符\0

void convert(int n)

c語言程式設計:用遞迴法將一個整數n轉換成字串。

11樓:用著追她

1、新建一個工程和.c檔案 ,輸入標頭檔案和主函式。

2、宣告被呼叫的函式,定義變數型別。

3、輸入整數。

4、用一個if語句去判斷整數是否為負數,若為負數則用putchar函式輸出一個負號。

5、呼叫一個函式。

6、定義函式的返回型別和形參型別。

7、通過if語句判斷該數是否僅剩一位數,若不是則執行else語句。

8、編譯執行。

12樓:匿名使用者

while的條件是不對的

n%10!=0 如果n=10 就退出了!

n的值也沒改變 所以是死迴圈。

而且即使改正之後輸出的結果也是與原數相反的

13樓:匿名使用者

#include

void main()

每輸入一個資料,敲一個空格,或者敲一個回車!這是個十位數的的轉換!

你的是不是沒輸入語句啊!沒有n值,所以沒資料吧

14樓:匿名使用者

你不是用遞迴做的,如果只是簡單的輸出,可以這樣做:

void tran(int a)

void main()

c語言程式設計用遞迴法將一個整數n轉換成字串。例如,輸入486,應輸出字串"486"。n的位數不確定,可以是任

15樓:郝在益

使用函式就可以了,

加入有一個數234,如:

int i = 234;

char a[20];

itoa(i,a,10);

這樣就將234轉化為字串到陣列a[20]裡了。

16樓:匿名使用者

#include

#include

void sc(int n,char* zf)int main(void)

17樓:

#include

int main(void)

s[i]=0;

for(j=0,i--;j<=i;i--,j++)puts(s);

return 0;}

編寫程式用遞迴法實現將一個整數n轉化成字串

18樓:匿名使用者

#ifndef myitoa_h

#define myitoa_h

bool myitoa(long n,char chars,int arrlen) //引數: 數字n,儲存轉換後數字的陣列,陣列長度。

int temp;

if(n<10 && n >0)

else if(n!=0)

count--;

return true;

}#endif

19樓:匿名使用者

#include

#include

int myfun( int n, char*p )*(p+i) = n%10;

i++;

return i;

}main()

【c語言求改錯】編制程式用遞迴法將一個整數n轉換成字串。例如,輸入483,應輸出字串「483」

20樓:匿名使用者

void f(x)

21樓:

#include

void invert(int a)

void main()

用遞迴法將一個整數轉換成字串

22樓:匿名使用者

你這程式有錯誤哦,輸出結果是原序輸出

以下是我稍微修改的程式,及相應的註釋

#include

void convert(int n)

main()

convert(number); //呼叫遞迴函式convert()}希望能幫到你,可以繼續**!

23樓:義昀欣

//舉例說明該函式流程,假如輸入123,123/10後得12,餘數是3

//再次執行convert函式,12/10得1,餘數是2//再次執行convert函式,1/10得0,餘數是1//至此,遞迴結束,開始列印數字,首先列印最後一次遞迴的結果1//然後列印倒數第二次的結果2

//最後列印3,輸出123

void convert(int n)

main()

convert(number); //執行遞迴函式}

用遞迴法將一個整數n轉換成字串

24樓:井鈺

寫了一下,看基本符合你要求了,不過還有些可以改的下面是程式**:

#include

int gnn(int e)

return last;

}void fun(long int n,int n)else }

void main()

printf("轉換後的輸出為: ");

printf("\"");

fun(n,n);

printf("\n");

//getch();}

c語言用遞迴法實現正整數的逆序輸出,誰會啊

include void shiftnumber int x int main c語言 將遞迴的方法將一個正整數逆序輸出 可以參考下面的 include include void print order number unsigned number int main int argc,char ar...

c語言用遞迴求函式的第n項fn

include int sumn int n,int flag int main else return 0 count作為一個遞迴的測試值,傳入呼叫函式,最終輸出的值和內n是一樣的容 用c語言程式設計 用遞迴的方法求 f n 1 1 2 2 3 3 n n 輸入數字n,輸出結果 f n 20 in...

c語言編寫程式將十進位制整數n轉換成二進位制數

include int transfer int x return y void main 擴充套件資料 c語言書寫規則 1.一個說明或一個語句佔一行。2.用 括起來的部分,通常表示了程式的某一層次結構。一般與該結構語句的第一個字母對齊,並單獨佔一行。3.低一層次的語句或說明可比高一層次的語句或說明...