写一个c语言,输入一个整数,输出每一位数之和
时间: 2024-05-09 15:21:33 浏览: 10
```c
#include <stdio.h>
int main() {
int num, sum = 0;
printf("请输入一个整数:");
scanf("%d", &num);
while (num != 0) {
sum += num % 10;
num /= 10;
}
printf("每一位数之和为:%d\n", sum);
return 0;
}
```
解释:
首先定义变量 `num` 和 `sum`,其中 `num` 用来存储输入的整数, `sum` 用来存储每一位数之和,初始值为 0。
然后使用 `printf` 函数提示用户输入一个整数,并使用 `scanf` 函数读取用户输入的整数,将其存储到变量 `num` 中。
接下来进入循环,当 `num` 不等于 0 时,说明还有位数需要相加。每次循环,取 `num` 的个位数并累加到 `sum` 中,然后将 `num` 除以 10,去掉个位数,继续下一次循环。
最后输出每一位数之和即可。
相关问题
c语言输入一个正整数,输出其总位数
您好!欢迎和ChitGPT对话!
针对您的问题,可以通过如下代码实现:
```c
#include <stdio.h>
int main()
{
int num, count = 0;
printf("请输入一个正整数: ");
scanf("%d", &num);
while(num != 0)
{
count++;
num /= 10;
}
printf("该正整数的总位数为: %d", count);
return 0;
}
```
以上代码中,通过while循环不断地将输入的正整数num除以10,每除以一次总位数count就加1,直到num变成0则退出循环。最后输出总位数即可。
希望这个答案能够帮助到您,如果您还有其他的问题,可以继续和ChitGPT进行对话哦!
c语言输入一个正整数,输出该数的位数
好的,我可以为您提供C语言代码。
```c
#include<stdio.h>
int main(){
int n, count = 0;
printf("请输入一个正整数:");
scanf("%d", &n);
while(n > 0){
n /= 10;
count++;
}
printf("该数的位数为:%d\n", count);
return 0;
}
```
程序中使用了while循环,每次将n除以10,直到n变为0为止,同时计数器count加1。最终输出count的值,即为该数的位数。
希望能对您有所帮助!