输入一批以-1结束的非负整数,统计所有数的各位数字之和,编写C语言程序
时间: 2023-03-08 12:46:00 浏览: 265
答:#include <stdio.h>
int main(void)
{
int input,s=0,n=0;
do
{
scanf("%d",&input);
s=s+input;
n=n+1;
}
while(input!=-1);
printf("%d\n",s/n);
return 0;
}
相关问题
题目描述 输入一批以-1结束的非负整数,统计所有数的各位数字之和。 输入 在一行中输入一批非负整数,以-1结束。 输出 在一行中输出一个整数。 样例输入 复制 1234 2 -1 样例输出 复制 12
以下是一份 C 语言的代码实现:
```c
#include <stdio.h>
int main() {
int num, sum = 0;
scanf("%d", &num); // 读取第一个整数
while (num != -1) {
while (num != 0) { // 对当前整数的每一位进行求和
sum += num % 10;
num /= 10;
}
scanf("%d", &num); // 读取下一个整数
}
printf("%d", sum); // 输出总和
return 0;
}
```
代码思路:
1. 首先用 scanf 函数读取第一个整数 num;
2. 然后进入一个 while 循环,如果读取的整数 num 不等于 -1,则继续执行循环;
3. 在循环中,对当前整数的每一位进行求和,即将当前整数不断除以 10 并对余数进行求和;
4. 循环结束后,用 scanf 函数读取下一个整数 num;
5. 重复步骤 2-4,直到读取到的整数为 -1;
6. 最后输出所有整数的各位数字之和 sum。
输入一个整数,统计该数各位数字之和。c语言
可以使用取余和整除运算符来依次获取该数的每一位数字,然后累加起来即可。以下是一个示例代码:
```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;
}
```
在上述代码中,我们首先通过 `scanf()` 函数获取用户输入的整数。然后使用一个 `while` 循环,依次获取该数的每一位数字并累加到 `sum` 变量中。具体来说,我们在每次循环中使用 `num % 10` 取余运算符获取最后一位数字,然后使用 `num /= 10` 整除运算符去掉最后一位数字。这样,我们就可以依次获取到该数的各位数字并进行累加。最后,我们使用 `printf()` 函数输出累加结果即可。