给出一个不多于5位的数字,要求:1.求出他是几位数;2.分别打印出每一位数字,3。按逆顺序打印出个位数字,例如原数为321,应输出123

  1. int main()  
  2. {  
  3. int num,w,ge,shi,bai,qian,wan;  
  4. cin>>num;  
  5. //if num =99999 num/10000=9  
  6. if(num/10000!=0)w=5;  
  7. else if(num/1000!=0)w=4;  
  8. else if(num/100!=0)w=3;  
  9. else if(num/10!=0)w=2;  
  10. else w=1;  
  11.  
  12. cout<<"是"<<w<<"位数"<<endl;  
  13. wan=num/10000;  
  14. qian=(num-wan*10000)/1000;  
  15. bai=((num-wan*10000)-qian*1000)/100;  
  16. shi=((num-wan*10000)-qian*1000-bai*100)/10;  
  17. ge=(num-wan*10000)-qian*1000-bai*100-shi*10;  
  18. cout<<"正在进行复杂计算,请等待0.000001秒"<<endl;  
  19. switch(w)  
  20. {  
  21. case 5: cout <<"正顺序输出"<<wan<<'\t'<<qian<<'\t'<<bai<<'\t'<<shi<<'\t'<<ge<<endl;  
  22.      cout <<"逆顺序输出"<<ge<<shi<<bai<<qian<<wan<<endl;  
  23.   break;  
  24. case 4: cout <<"正顺序输出"<<qian<<'\t'<<bai<<'\t'<<shi<<'\t'<<ge<<endl;  
  25.         cout <<"逆顺序输出"<<ge<<shi<<bai<<qian<<endl;  
  26.   break;  
  27. case 3: cout <<"正顺序输出"<<bai<<'\t'<<shi<<'\t'<<ge<<endl;  
  28.         cout <<"逆顺序输出"<<ge<<shi<<bai<<endl;  
  29.      break;  
  30. case 2: cout<<"正顺序输出" <<shi<<'\t'<<ge<<endl;  
  31.         cout<<"逆顺序输出" <<ge<<shi<<endl;  
  32.   break;  
  33. case 1: cout<<"正顺序输出"  <<ge<<endl;  
  34.         cout <<"逆顺序输出" <<ge<<endl;  
  35.   break;  
  36.  
  37. }  
  38. return 0;  
  39. }