编写程序:输入一个不多于五位的正整数,完成以下功能: (1)判断它是几位数(用swtich语句实现); (2)分别打印每一位数字; (3)按逆序输出各位数字。 例如,若输入n=2345,输出结果为:四位数:2 3 4 5 5 4 3 2 提示:按以下步骤设计程序 ① 输入一个不多于五位的正整数; ② 求出该数的各位数字(万位、千位、百位等); 例如:求千位 q=n/1000%10 ③ 判断该数为几位数,并按要求输出结果。
时间: 2023-04-09 12:00:36 浏览: 418
输入一个不多于五位的整数,输出它是几位数,各位数字,及其逆序
4星 · 用户满意度95%
我可以回答这个问题。以下是程序的实现:
#include <stdio.h>
int main() {
int n, q, b, s, g;
printf("请输入一个不多于五位的正整数:");
scanf("%d", &n);
// 求出各位数字
q = n / 1000;
b = n % 1000 / 100;
s = n % 100 / 10;
g = n % 10;
// 判断是几位数,并输出结果
switch (q > 0 ? 4 : b > 0 ? 3 : s > 0 ? 2 : 1) {
case 1:
printf("一位数:%d\n", g);
printf("逆序输出:%d\n", g);
break;
case 2:
printf("两位数:%d %d\n", s, g);
printf("逆序输出:%d %d\n", g, s);
break;
case 3:
printf("三位数:%d %d %d\n", b, s, g);
printf("逆序输出:%d %d %d\n", g, s, b);
break;
case 4:
printf("四位数:%d %d %d %d\n", q, b, s, g);
printf("逆序输出:%d %d %d %d\n", g, s, b, q);
break;
}
return 0;
}
阅读全文