输入一个五位数字,求出每一位数字并求和,用c语言
时间: 2023-12-16 10:04:21 浏览: 54
可以使用以下代码实现:
```c
#include <stdio.h>
int main() {
int num, sum = 0;
printf("请输入一个五位数字:");
scanf("%d", &num);
for (int i = 10; i <= 10000; i *= 10) {
int digit = (num % i) / (i / 10);
printf("%d ", digit);
sum += digit;
}
printf("\n每一位数字的和为:%d\n", sum);
return 0;
}
```
首先,使用 `scanf` 获取用户输入的数字。然后,使用一个循环依次获取这个数字的每一位数字,方法是先取模得到当前位所代表的数字,再除以当前位数得到真正的数字。每获取一位数字就打印出来,并将其加入总和中。最后打印出总和即可。
相关问题
c语言写一个递归函数使得,输入的数字,每个数位相加求和
一个示例递归函数如下:int addDigits(int num)
{
// 递归终止条件
if (num == 0)
return 0; // 对于每个数字,求和取余
return (num % 10 + addDigits(num / 10));
}
从键盘输入一个3位的自然数M,分离出它的百位,十位与个位上的数字并求和和输出。C语言
可以使用以下代码实现:
```c
#include <stdio.h>
int main() {
int m, b, s, g, sum;
printf("请输入一个3位自然数M:");
scanf("%d", &m);
b = m / 100; // 分离百位数字
s = m % 100 / 10; // 分离十位数字
g = m % 10; // 分离个位数字
sum = b + s + g; // 求和
printf("百位数字:%d\n十位数字:%d\n个位数字:%d\n数字之和:%d\n", b, s, g, sum);
return 0;
}
```
当输入一个3位自然数M时,程序会分离出它的百位、十位和个位数字,并计算它们的和,最后输出结果。