我试了下先把整数倒序然后再输出为字符串,但是输出时第二个功能函数无法用我第一个功能函数得到的倒序得整数进行运算,最后输出了两个独立的结果,问问哪个大佬能帮看下哪里出了问题
2条回答 默认 最新
- qfl_sdu 2021-06-21 22:50关注
代码如下:
#include <stdio.h> //输出逆序整数 int convert(int x) { int sum = 0; int d; while(x > 0) { d = x%10; sum = sum * 10 + d; x = x/10; } return sum; } //输出位字符串形式,如x=123,则buf中是'1''2''3' void trans(int x,char buf[]) { int i,n=0; int d = x; while(d>0){n++;d/=10;}//计算位数 buf[n] = '\0'; n--; while(n>=0) { buf[n] = x%10 + '0'; x = x/10; n--; } } //如果x=123,那么buf中是'3''2''1' void trans2(int x,char buf[]) { int d = x; int i = 0; while(d>0) { buf[i] = d%10 + '0'; d = d/10; i++; } } int main() { int x,number; char buf[10]; printf("请输入一个数:"); scanf("%d",&x); number = convert(x); printf("%d\n",number); trans(number,buf); printf("字符:%s\n",buf); trans2(number,buf); printf("字符:%s\n",buf); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报