C语言任意输入一个有五位数字的正整数,逆序输出每一数位上的数字 如输入12345 输出5 4 3 2 1

注意输出的数字有空格! 最后用上n%10 n/10%10 n/100%10 n/1000%10 n/10000%10...谢谢

#include<iostream>

usingnamespacestd;

intmain(){

intoriginal,key,result=0;

cout<<"PleaseEntertheNumber:"<<endl;

cin>>original;

do

{

key=original%10;

if(key==0)

{

cout<<"NewNumberis0"<<original;

//original=(original-key)/10;

}

else

{

result=key+result*10;//result需要移位

original=(original-key)/10;

//cout<<"NewNumberis"<<result;

}

}while(key!=0);//key=0是终止条件

cout<<"NewNumberis"<<result<<endl;

return0;

}

扩展资料

c++,输入一个整数值并输出此整数的各数字反序的数值

#include<iostream>

usingnamespacestd;

voidfunc(int);

intmain()

{

intnum;

cout<<"输入一个整数:";

cin>>num;

func(num);

return0;

}

voidfunc(intn)

{

intcon=0;

while(n)

{

con=con*10+n%10;

n/=10;

};

cout<<"这个数的反序:"<<con<<endl;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-13

思路:要想求一个整数的逆序,依次对其取余输出,再除10操作,直到该值等于0为止。

参考代码:

#include "stdio.h" 
int main() {
int n;
scanf("%d",&n);//键盘输入赋值 
while(n){//直达其为0为止 
printf("%d ",n%10);//对10取余 
n/=10;//除10操作 

return 0;
}
/*
运行结果:
12345
5 4 3 2 1
*/

第2个回答  推荐于2017-10-15
#include<stdio.h>
int main(){
int n;
scanf("%d",&n);
printf("%d %d %d %d %d\n",n%10,n/10%10,n/100%10,n/1000%10,n/10000);
return 0;
}
/*BY TXJ*/

追问

不行啊= =

追答

你的&呢?
scanf("%d",&n);

本回答被提问者采纳
第3个回答  2019-03-17


如图

第4个回答  2015-04-10
#include<stdio.h>
int main()
{
int a,b;
scanf("%d",&a);
b=a%10;
printf("%d ",b);
a/=10;
b=a%10;
printf("%d ",b);
a/=10;
b=a%10;
printf("%d ",b);
a/=10;
b=a%10;
printf("%d ",b);
a/=10;
b=a%10;
printf("%d ",b);
a/=10;
return 0;
}

相似回答