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/n/139829.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
JMMBJMMB
上一篇 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

发表回复

登录后才能评论