/*
*程序的版权和版本声明部分:
*Copyright(c)2013,烟台大学计算机学院学生
*All rights reserved.
*文件名称:
*作者:田成琳
*完成日期:2013年 10月24 日
*版本号:v1.0
*对任务及求解方法的描述部分:
*输入描述:输入一个不大于5位的数字
*问题描述:先判断有几位,每位是什么,然后逆顺序输出
*程序输出: 输出这个数字有几位,每位分别是什么,然后逆顺序输出这个数字
*问题分析:
*算法设计:
*/
.我的程序:
#include<iostream>
using namespace std;
int main()
{
int x,a,b,c,d,e;
cin>>x;
if(x/10000!=0) //判断是几位数,下同
{
cout<<"5"<<endl;
a=x/10000;
b=x/1000%10;
c=x/100%10;
d=x/10%10;
e=x%10; //若是5位数,分离它的每位,并按要求输出
cout<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<e<<endl;
cout<<e<<d<<c<<b<<a;
}
else if(x/10000==0&&x/1000!=0)
{
cout<<"4"<<endl;
a=x/1000;
b=x/100%10;
c=x/10%10;
d=x%10;
cout<<a<<" "<<b<<" "<<c<<" "<<d<<endl;
cout<<d<<c<<b<<a;
}
else if(x/10000==0&&x/1000==0&&x/100!=0)
{
cout<<"3"<<endl;
a=x/100;
b=x/10%10;
c=x%10;
cout<<a<<" "<<b<<" "<<c<<endl;
cout<<c<<b<<a;
}
else if(x/10000==0&&x/1000==0&&x/100==0&&x/10!=0)
{
cout<<"2"<<endl;
a=x/10;
b=x%10;
cout<<a<<" "<<b<<endl;
cout<<b<<a;
}
else if(x/10000==0&&x/1000==0&&x/100==0&&x/10==0&&x/1!=0)
{
cout<<"1"<<endl;
a=x%10;
cout<<a<<endl;
cout<<a;
}
return 0;
}
运行结果:
心得体会:最核心的地方是分离这个多位数!