C++如何实现提示用户输入一个正整数,计算出该数字的位数并把找出每一位上的数字?

如题所述

以下程序能满足你的要求,包括逆序输出各个位数:
/*
**获取数字num的长度
*/
int getLength(int num)
{
int i = 1;
int temp = num;
while(temp/10 != 0)
{
++i;
temp /= 10;
}
return i;
}
/*
**顺序输出数字num的各个位数
*/
void outputEveryNumber(int num)
{
int temp = num;
int length = getLength(num);
int flag = 1;
for(int i =1;i<length;++i)
{
flag *= 10;
}
while(flag != 1)
{
printf("%d%c",temp/flag,' ');
temp %= flag;
flag /= 10;
}
printf("%d%c",temp,' ');
}
/*
**逆序输出数字num的各个位数
*/
void reversedOutput(int num)
{
int flag = num;
while(flag != 0)
{
printf("%d%c",flag%10,' ');
flag /= 10;
}
}
温馨提示:答案为网友推荐,仅供参考
相似回答