用C语言实现给定一个正整数,要求:1.求他是几位数,2.分别打印每一位数字,3。逆序打印每一位数字。
时间: 2024-04-07 12:33:09 浏览: 102
求给定正整数的位数和并逆序打印各位数
以下是用C语言实现给定一个正整数的要求:
```c
#include <stdio.h>
int main() {
int num, digits = 0;
printf("请输入一个正整数:");
scanf("%d", &num);
// 判断数字位数
int temp = num;
while (temp != 0) {
temp /= 10;
digits++;
}
printf("该数是%d位数\n", digits);
// 分别打印每一位数字
printf("每一位数字分别是:");
int divisor = 1;
for (int i = 1; i < digits; i++) {
divisor *= 10;
}
while (divisor != 0) {
int digit = num / divisor;
printf("%d ", digit);
num %= divisor;
divisor /= 10;
}
printf("\n");
// 逆序打印每一位数字
printf("逆序打印每一位数字:");
while (digits != 0) {
int digit = num % 10;
printf("%d ", digit);
num /= 10;
digits--;
}
printf("\n");
return 0;
}
```
您可以将上述代码保存为一个以`.c`为后缀的文件,然后编译运行即可。输入一个正整数,程序将会输出该数字的位数,分别打印每一位数字,并逆序打印每一位数字。
阅读全文