输入一个小于10000的正整数,输出该整数各位上的数 c语言
时间: 2024-05-19 18:13:51 浏览: 28
#include <stdio.h>
int main() {
int num, digit, sum = 0;
printf("请输入一个小于10000的正整数:");
scanf("%d", &num);
while (num > 0) {
digit = num % 10;
sum += digit;
num /= 10;
}
printf("各位数之和为:%d\n", sum);
return 0;
}
相关问题
给出一个不多于5位的正整数求出它是几位数;c语言
在C语言中,我们可以使用以下代码来求出一个不多于5位的正整数是几位数:
```c
#include <stdio.h>
int main() {
int num;
printf("请输入一个不多于5位的正整数:");
scanf("%d", &num);
if (num < 10) {
printf("这个数是一位数");
} else if (num < 100) {
printf("这个数是两位数");
} else if (num < 1000) {
printf("这个数是三位数");
} else if (num < 10000) {
printf("这个数是四位数");
} else {
printf("这个数是五位数");
}
return 0;
}
```
这段代码首先让用户输入一个不多于5位的正整数,然后通过判断数的大小,来确定它是几位数。如果输入的数小于10,则它是一位数;如果数小于100,则是两位数;如果小于1000,则是三位数;小于10000则是四位数;否则为五位数。通过这个判断,我们可以得知输入的数是几位数。
输入一个正整数x(x<10000),第一行输出x的位数(即x为几位数,输出后回车),第二行按逆序(即先输出个位)输出各位数字(参看样例,每个数字之间用空格间隔)。用c语言
好的,以下是符合你要求的 C 语言代码:
```c
#include <stdio.h>
int main() {
int x;
int count = 0;
scanf("%d", &x);
// 计算 x 的位数
while (x > 0) {
count++;
x /= 10;
}
printf("%d\n", count);
// 按逆序输出各位数字
while (count > 0) {
int digit = x % 10;
printf("%d ", digit);
x /= 10;
count--;
}
return 0;
}
```
你可以将上面的代码复制到 C 语言编译器中运行,然后输入一个正整数,程序将会输出该数的位数和按逆序输出各位数字的结果。注意,输入的数字必须小于 10000。