用递归法将一个整数转化为倒序的字符串

用递归法将一个整数转化为字符串后,如何将字符串倒序?

 代码如下:{如果对你有帮助,可以给我个采纳吗,谢谢!! 点击我这个回答右上方的【采纳】按钮}。

#include <stdio.h>

void f(int n)
{
    printf("%c",'0'+n%10);
    if (n/10 != 0)
       f(n/10);
}

int main() {
    int n;
    printf("输入一个整数:");
    scanf("%d", &n);
    f(n);
    return 0;
}

#include <stdlib.h>
void fun(char *p,int n)
{
	if(n>2)
	{
		char k = *p;
		*p = *(p+n-1);
		*(p+n-1) = k;
		fun(p+1,n-2);
	}
}

void main()
{
	int n;
	scanf("%d",&n);
	char a[100]  = {0};
	itoa(n,a,10);
	n=0;
	for(int i=0;a[i] !='\0';i++)
		n++;
	fun(a,n);
	printf("%s",a);
}

 

代码如下:

#include <stdio.h>

//a是要转换的数字,buf是存储数字的字符串,n是字符串的长度
void fun(int a,char buf[],int* n )
{
	int d ;
	if (a == 0)
	{
		return;
	}else
	{
		d = a%10;
		buf[*n] = '0' + d;
		(*n)++;
		a/= 10;
		fun(a,buf,n);
	}
}
void main()
{
	int nmb,n=0;
	char buf[100]={0};
	printf("请输入一个数:");
	scanf("%d",&nmb);
	fun(nmb,buf,&n);
	printf("字符串长度=%d:%s\n",n,buf);
}

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632