利用C语言实现数字倒序输出
·
1.问题
利用C语言实现将一个数字倒着按顺序输出来,例如2546输出6452.
2.解析
可以将一个数a在循环中进行模运算,每次模10,得到最后一位数,然后将这个数输出,在将这个数a除以10,进行下一次模运算,直到这个数a/10等于0然后结束。
3.程序代码
#include<stdio.h>
int main()
{
int x;
scanf("%d",&x);
int d;
while(x>0){
d=x%10;
if(d==0){
printf("0");
x=x/10;
continue;
}
else{
printf("%d",d);
}
x/=10;
}
return 0;
}
也可以利用下面这个式子将每次模10 的结果放入一个变量,并每次循环将变量乘10,使位数每次高一位。
#include<stdio.h>
int main()
{
int x;
scanf("%d",&x);
int digit;
int ret = 0;
while(x>0)
{
digit = x%10;
ret=ret*10+digit;
printf("x=%d,digit=%d,ret=%d\n",x,digit,ret);
x/=10;
}
printf("%d ", ret);
return 0 ;
}
/*这个程序的缺陷是不能输出最后的0,例如3320,会输出233,
会省略掉一个末尾的0,也可以跟上面程序一样直接输出每次模10 的结果,
而不是将每个值乘对应位数的值(乘10或1000这样).*/
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)