不懂就问!真的想不明白这个了。

编写程序,提示用户输入一个正整数,计算出该数字的位数并把找出每一位上的数字。嵌入头文件cmath后,可用函数pow计算一个数x的n次方, 格式为pow(x,n)。

例如:输入数字12345,程序运行结果为

12345是一个5位数

各位上的数字从高到低分别为:

12345

img

请把问题写清楚,各位上的数字从高到低分别为:12345????

代码如下:

#include <iostream>
#include <cmath>
using namespace std;
int main()
{
    int n,ws=1,t=1;
    cin >> n;
    while(n/t>=10)
    {
        t = pow((double)10,ws);
        ws++;
    }
    
    cout << n << "是一个" << ws << "位数"<<endl;
    cout << "各位上的数字从高到低分别为:"<<endl;
    for(int i = 1;i<=ws;i++)
    {
        t = pow((double)10,ws-i);
        cout << n/t << " ";
        n = n%t;
    }
    return 0;
    
}