![]() |
#2
洪夜馨2009-10-12 20:36
我也是小白,你看下版块上就发现我的很多问题了
![]() 我不知道我说的对不对,就先提出来了,看看下面别人是怎么查的: 1、if(nuber>9999) 后面应该是回车+“{”吧,在大括号里面加e=5; cout<<"它是5位数"<<endl;+“}” 我认为正确的是: if(n<0 || n>99999) { cout<<"错误"<<endl; } else { if(nuber>9999) { e=5; cout<<"它是5位数"<<endl; } else { if(nuber>999) { e=4; cout<<"它是4位数"<<endl; } else { if(nuber>99) { e=3; cout<<"它是3位数"<<endl; } else { if(nuber>9) { e=2; cout<<"它是2位数"<<endl; } else { if(nuber>=0) { e=1; cout<<"它是1位数"<<endl; } else { cout<<"输入错误"<<endl; } } } } } } 我看书上都这样的,不知道不加可不可以。 ![]() x=(int)(nuber/10000); y=(int)(nuber-10000*x)/1000; z=(int)(nuber-10000*x-1000*y)/100; k=(int)(nuber-10000*x-1000*y-100*z)/10; f=(int)(nuber-10000*x-1000*y-100*z-10*k); 这个我不知道,我上次问的时候别人给的是下面这个样子的:(地址我忘记了,所以不知道我写的对不对,抱歉) x = nuber/10000; y = nuber/1000%10; z = nuber/100%10; k = nuber/10%10; f = nuber%10 后面一样的: switch(e) { case 5:cout<<x<<y<<z<<k<<f<<endl; cout<<"反顺序是:"<<f<<k<<z<<y<<x<<endl; case 4:cout<<y<<z<<k<<f<<endl; cout<<"反顺序是:"<<f<<k<<z<<y<<endl; case 3:cout<<z<<k<<f<<endl; cout<<"反顺序是:"<<f<<k<<z<<endl; case 2:cout<<k<<f<<endl; cout<<"反顺序是:"<<f<<k<<endl; case 1:cout<<k<<f<<endl; cout<<"反顺序是:"<<f<<endl; } 我改成 switch(e) { case '5': { cout<<x<<y<<z<<k<<f<<endl; cout<<"反顺序是:"<<f<<k<<z<<y<<x<<endl; } ………… 这样子的。 也不知道这样对不对。我也是新手,也不知道我是不是越帮越忙了。你看看其他人吧。 [ 本帖最后由 洪夜馨 于 2009-10-12 20:42 编辑 ] |
#include<iostream>
using namespace std;
int main()
{
int x,y,z,k,f,e;
int nuber;
cout<<"请输入不大于5位的数字"<<endl;
cin>>nuber;
if(nuber>9999)
e=5;
cout<<"它是5位数"<<endl;
else if(nuber>999)
e=4;
cout<<"它是4位数"<<endl;
else if(nuber>99)
e=3;
cout<<"它是3位数"<<endl;
else if(nuber>9)
e=2;
cout<<"它是2位数"<<endl;
else
e=1;
cout<<"它是1位数"<<endl;
x=(int)(nuber/10000);
y=(int)(nuber-10000*x)/1000;
z=(int)(nuber-10000*x-1000*y)/100;
k=(int)(nuber-10000*x-1000*y-100*z)/10;
f=(int)(nuber-10000*x-1000*y-100*z-10*k);
switch(e)
{
case 5:cout<<x<<y<<z<<k<<f<<endl;
cout<<"反顺序是:"<<f<<k<<z<<y<<x<<endl;
case 4:cout<<y<<z<<k<<f<<endl;
cout<<"反顺序是:"<<f<<k<<z<<y<<endl;
case 3:cout<<z<<k<<f<<endl;
cout<<"反顺序是:"<<f<<k<<z<<endl;
case 2:cout<<k<<f<<endl;
cout<<"反顺序是:"<<f<<k<<endl;
case 1:cout<<k<<f<<endl;
cout<<"反顺序是:"<<f<<endl;
}
return 0;
}
先求出是几位数,然后是相反显示出来。
谢谢!!