读入20个整数,统计非负数的个数及其和,并求出最大的数。用c语言实现
时间: 2024-02-06 11:09:07 浏览: 71
以下是用C语言实现的程序:
```c
#include <stdio.h>
int main() {
int num, count = 0, sum = 0, max = -2147483648; // 初始化max为最小值
for (int i = 0; i < 20; i++) {
scanf("%d", &num);
if (num >= 0) { // 判断是否为非负数
count++;
sum += num;
}
if (num > max) { // 更新最大值
max = num;
}
}
printf("非负数个数:%d\n", count);
printf("非负数和:%d\n", sum);
printf("最大的数:%d\n", max);
return 0;
}
```
程序通过循环读入20个整数,并判断每个整数是否为非负数,从而统计非负数的个数和其和。同时,程序还维护一个变量max,记录当前已经读入的最大数。最后输出统计结果。
相关问题
c语言代码读入20个整数,统计非负数的个数及其和,并找出最大的数
好的,我会根据您的要求进行回答。下面是符合您要求的 C 语言代码:
```c
#include <stdio.h>
int main() {
int num[20];
int count = 0, sum = 0, max = 0;
printf("请输入20个整数:\n");
for (int i = 0; i < 20; i++) {
scanf("%d", &num[i]);
if (num[i] >= 0) {
count++;
sum += num[i];
}
if (num[i] > max) {
max = num[i];
}
}
printf("非负数的个数为:%d\n", count);
printf("非负数的和为:%d\n", sum);
printf("最大的数为:%d\n", max);
return 0;
}
```
这段代码首先定义了一个长度为 20 的整型数组 `num`,然后通过循环读入 20 个整数,并进行相应的处理。
在循环中,我们通过 `scanf` 函数读入一个整数,然后判断该数是否为非负数。如果是非负数,就累加非负数的个数和总和。同时,每读入一个数,我们都会与当前的最大数进行比较,如果大于最大数,就将其更新为当前的最大数。
最后,输出统计结果即可。
用c语言从键盘输入十个整数统计其中正数,负数和0的个数,并在屏幕上依次输出
下面是用 C 语言实现从键盘输入十个整数统计其中正数,负数和0的个数,并在屏幕上依次输出的代码:
```c
#include <stdio.h>
int main() {
int num, positive_count = 0, negative_count = 0, zero_count = 0;
// 读入十个整数
for (int i = 0; i < 10; i++) {
printf("请输入第 %d 个整数:", i+1);
scanf("%d", &num);
// 统计正数、负数和0的个数
if (num > 0) {
positive_count++;
} else if (num < 0) {
negative_count++;
} else {
zero_count++;
}
}
// 输出结果
printf("正数个数:%d\n", positive_count);
printf("负数个数:%d\n", negative_count);
printf("0的个数:%d\n", zero_count);
return 0;
}
```
使用 for 循环读入十个整数,并依次统计正数、负数和0的个数。最后输出结果。