Problem Description
输入一个不多于5位的正整数,要求:
(1)求出它是几位数;
(2)分别输出每一位数字;
(3)按逆序输出各位数字。
Input
输入一个不多于5位的正整数。
Output
输出数据有3行,第一行为正整数位数,第二行为各位数字,第三行为逆序的各位数字。
#include<iostream>
using namespace std;
int main()
{
int n,a,b,c,d,e;
cin>>n;
if(n>9999)
cout<<5<<endl;
else if(n>999)
cout<<4<<endl;
else if(n>99)
cout<<3<<endl;
else if(n>9)
cout<<2<<endl;
else
cout<<1<<endl;
a=n%10000%1000%100%10;
b=n%10000%1000%100/10;
c=n%10000%1000/100;
d=n%10000/1000;
e=n/10000;
if(e!=0)
{
cout<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<e<<endl;
cout<<e<<" "<<d<<" "<<c<<" "<<b<<" "<<a<<endl;
}
else if(d!=0)
{
cout<<a<<" "<<b<<" "<<c<<" "<<d<<endl;
cout<<d<<" "<<c<<" "<<b<<" "<<a<<endl;
}
else if(c!=0)
{
cout<<a<<" "<<b<<" "<<c<<endl;
cout<<c<<" "<<b<<" "<<a<<endl;
}
else if(b!=0)
{
cout<<a<<" "<<b<<endl;
cout<<b<<" "<<a<<endl;
}
else
{
cout<<a<<endl;
cout<<a<<endl;
}
return 0;
}