用c语言编写,输入一个不多于4位的整数,求出它是几位数,并逆序输出各位数字。
时间: 2023-05-24 19:05:07 浏览: 69
```c
#include <stdio.h>
int main() {
int num;
int count = 0; // 统计位数的变量
printf("请输入一个不多于4位的整数:");
scanf("%d", &num);
if (num >= 1000) { // 4位数
count = 4;
printf("%d%d%d%d\n", num % 10, num / 10 % 10, num / 100 % 10, num / 1000);
} else if (num >= 100) { // 3位数
count = 3;
printf("%d%d%d\n", num % 10, num / 10 % 10, num / 100);
} else if (num >= 10) { // 2位数
count = 2;
printf("%d%d\n", num % 10, num / 10);
} else { // 1位数
count = 1;
printf("%d\n", num);
}
printf("输入的数字是%d位数\n", count);
return 0;
}
```
如果输入的数字是4321,则输出结果为:
```
请输入一个不多于4位的整数:4321
1234
输入的数字是4位数
```
相关问题
C语言:给一个不多于5位的正整数求它是几位数并逆序打印出各位数字。
```c
#include <stdio.h>
int main() {
int num, count = 0;
int digits[5] = {0}; // 用数组存储每一位数字
printf("请输入一个不多于5位的正整数:");
scanf("%d", &num);
// 分解每一位数字并存储
while (num > 0) {
digits[count++] = num % 10;
num /= 10;
}
printf("该数是%d位数,逆序打印出各位数字为:", count);
for (int i = 0; i < count; i++) {
printf("%d", digits[i]);
}
printf("\n");
return 0;
}
```
运行结果:
```
请输入一个不多于5位的正整数:12345
该数是5位数,逆序打印出各位数字为:54321
```
用c语言给定一个不多于5位的正整数判断它是几位数并逆序输出
#include <stdio.h>
int main() {
int n;
printf("请输入一个不多于5位的正整数:");
scanf("%d", &n);
if (n < 10) {
printf("这是一个一位数,逆序输出为:%d\n", n);
} else if (n < 100) {
printf("这是一个两位数,逆序输出为:%d%d\n", n % 10, n / 10);
} else if (n < 1000) {
printf("这是一个三位数,逆序输出为:%d%d%d\n", n % 10, (n / 10) % 10, n / 100);
} else if (n < 10000) {
printf("这是一个四位数,逆序输出为:%d%d%d%d\n", n % 10, (n / 10) % 10, (n / 100) % 10, n / 1000);
} else {
printf("这是一个五位数,逆序输出为:%d%d%d%d%d\n", n % 10, (n / 10) % 10, (n / 100) % 10, (n / 1000) % 10, n / 10000);
}
return 0;
}