c語言遞歸數字轉字元串,C語言數字轉字元串

本文目錄一覽:

C語言題目:使用遞歸法將整數轉換成字元串。

可以這樣用ascii碼來轉換

ascii碼從48~58分別是0,1,2…9

int a=3;

char b;

b=char(a+48);

然後b就是字元’3’了

#includestdio.h

char mychar[100];//定義一個無限大的字元數組來存放所生成的字元 不過最好使用c的動態內存分配

int i=0;

char* function(int a)

{

if (a10) {

mychar[i++]=char(48+a);

return mychar;

}

function(a/10);

mychar[i++]=char(48+a%10);//轉化為字元串使用ascii碼來轉換

return mychar;

}

void main()

{

char*a;

int num=0;

scanf(“%d”,num);

a=function(num);

printf(“轉化為字元串後:%s”,a);

}

C語言編程:用遞歸法將一個整數n轉換成字元串。

你好!

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

void

tran(int

a)

{

if(a=10)

tran(a/10);

printf(“%d”,a%10);

}

void

main()

{

tran(12345);

}

希望對你有所幫助,望採納。

數字轉字元串C語言(必須用遞歸演算法)

#include stdio.h

#include math.h

int Digit(int n)

{

int d = 0;

do{

++d;

n /= 10;

}while(n 0 || n 0);

return d;

}

void itoa(int n, char* des)

{

if(n 0)

{

int x = (int)pow(10.0, Digit(n)-1);

*des = n / x + ‘0’;

itoa(n-(n/x)*x, des+1);

}

else{

*des = ‘\0’;

}

}

void itora(int n, char* des)

{

*des++ = n 0 ? itora(n/10, des), n % 10 + ‘0’ : ‘\0’;

}

int main()

{

char b[10], c[10];

itoa(12345, b);

itora(12345, c);

printf(“%s %s”, b, c);

}

C語言用遞歸法將一個整數n轉換成字元串的程序中 putchar(n%10+’0′);有什麼作用?

作用就是輸出整數n的個位數對應的字元。

n%10對10取餘數,得到個位。

個位+ ‘0’就是得到對應的數字字元比如1 + ‘0’ = ‘1’

查看下ASCII碼錶就知道了。

C語言,請問:遞歸函數把整數轉換成字元串:如123,字元串「123」怎麼做?非常急

這個題目是用循環好做,用遞歸還有點煩,還好做出來了:

#include “stdio.h”

int itoc(int num, char *buffer)

{

int i=0;

if(num0)

{

*buffer=’-‘;

num=0-num;

itoc(num,buffer+1);

}

else if(num=10)

{

i=itoc(num/10,buffer);

*(buffer+i)=(num%10)+’0′;

*(buffer+i+1)=0;

}

else

{

*buffer=num+’0′;

*(buffer+1)=0;

}

return i+1;

}

void main()

{

char str[20];

itoc(0,str);

printf(“%s\n”,str);

itoc(17858,str);

printf(“%s\n”,str);

itoc(-12345,str);

printf(“%s\n”,str);

}

用遞歸將一個整數n轉換成一個字元串。如將1234轉換為”1234″。

#include “stdio.h”

main()

{

void convert()

int m;

printf(“pinput m=”)

scanf(“%d”,m)

convert(m);

}

void convert(int n)

{

int i;

char c;

if((i=n/10)!=0)/*結束遞歸調用的條件是i==0*/

convert(i);

c=n%10+’0′

putchar(c);

putchar(‘\t’);

}

1、設m=123,第一次進入convert()方法

if((i=n/10)!=0) //這個時候i =123/10 = 12,因為i!=0,所以進入if

convert(i); 調用convert()

2、第二次進入convert()方法,此時參數帶入的是n=12

if((i=n/10)!=0) //這個時候i =12/10 = 1,因為i!=0,所以進入if

convert(i); 調用convert()

3、第三次進入convert()方法,此時參數帶入的是n=1

if((i=n/10)!=0) //這個時候i =1/10 = 0,所以不進入if,直接執行下面語句

c=n%10+’0′ //c=’1′,這裡的+’0’,是為了讓數字轉換為字元

putchar(c); //輸出1

putchar(‘\t’);

因為這個方法體已經執行完畢,所以跳出這個方法,回到第二次的convert()方法。

4、第二次的convert()方法,因為convert(i); 已經執行完,則執行下面那句

c=n%10+’0′ //c=12%10+’0’=’2′ putchar(c); //輸出2

putchar(‘\t’);

因為這個方法體已經執行完畢,所以跳出這個方法,回到第一次的convert()方法。

5、第一次的convert()方法,因為convert(i); 已經執行完,則執行下面那句

c=n%10+’0′ //c=123%10+’0’=’3′ putchar(c); //輸出3

putchar(‘\t’);

原創文章,作者:JMMB,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/139829.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
JMMB的頭像JMMB
上一篇 2024-10-04 00:22
下一篇 2024-10-04 00:22

相關推薦

  • Python字元串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字元串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字元串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python循環符合要求數字求和

    這篇文章將詳細介紹如何通過Python循環符合要求數字求和。如果你想用Python求和但又不想手動輸入數字,那麼本文將是一個不錯的選擇。 一、使用while循環實現求和 sum =…

    編程 2025-04-29
  • Python中將字元串轉化為浮點數

    本文將介紹在Python中將字元串轉化為浮點數的常用方法。在介紹方法之前,我們先來思考一下這個問題應該如何解決。 一、eval函數 在Python中,最簡單、最常用的將字元串轉化為…

    編程 2025-04-29
  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • Java判斷字元串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字元串中是否存在多個指定字元: 一、字元串遍歷 字元串是Java編程中非常重要的一種數據類型。要判斷字元串中是否存在多個指定字元…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演著非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python學習筆記:去除字元串最後一個字元的方法

    本文將從多個方面詳細闡述如何通過Python去除字元串最後一個字元,包括使用切片、pop()、刪除、替換等方法來實現。 一、字元串切片 在Python中,可以通過字元串切片的方式來…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • Python基本數字類型

    本文將介紹Python中基本數字類型,包括整型、布爾型、浮點型、複數型,並提供相應的代碼示例以便讀者更好的理解。 一、整型 整型即整數類型,Python中的整型沒有大小限制,所以可…

    編程 2025-04-29
  • Python列印數字三角形

    本文將詳細闡述如何使用Python列印數字三角形,包括從基本代碼實現到進階操作的應用。通過本文的學習,您可以掌握Python的基礎語法,同時加深對Python循環和函數的理解,提高…

    編程 2025-04-29

發表回復

登錄後才能評論