整数分解与逆序输出。C++

#include<iostream>

using namespace std;

int main()

{

 int num = 0;

 for (;;)

 {

  cout << "请输入一个不多于5位的正整数\n";

  cin >> num;

  if (num < 100000)

   break;

 }

 int a = 0;//数字位数

 int a1 = 0;

 int a2 = 0;

 int a3 = 0;

 int a4 = 0;

 int a5 = 0;

 if (num > 9999) a = 5;

 else if (num > 999) a = 4;

 else if (num > 99) a = 3;

 else if (num > 9) a = 2;

 else a = 1;

 

 cout << "您输入的数字是一个" << a << "位数" << endl;

 a1 = num / 10000;

 a2 = (num / 1000) % 10;

 a3 = (num / 100) % 10;

 a4 = (num / 10) % 10;

 a5 = num % 10;

 cout << "每一位数字分别为";

 cout << endl;

 switch (a)

 {

 case 5:cout << a1 << " " << a2 << " " << a3 << " " << a4 << " " << a5; break;

 case 4:cout << a2 << " " << a3 << " " << a4 << " " << a5; break;

 case 3:cout << a3 << " " << a4 << " " << a5; break;

 case 2:cout << a4 << " " << a5; break;

 case 1:cout << a5; break;

 }

 cout << endl;

 cout << "逆序之后可得";

 cout << endl;

 switch (a)

 {

 case 5:cout << a5 << " " << a4<< " " << a3 << " " << a2 << " " << a1; break;

 case 4:cout << a5 << " " << a4 << " " << a3 << " " << a2; break;

 case 3:cout << a5<< " " << a4<< " " << a3; break;

 case 2:cout << a5 << " " << a4; break;

 default:cout << a5; break;

 }

 system("pause");

 return 0;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值