c编写程序读取正整数,找出它们的最大数,然后计算该最大数出现的次数。输入以-1结束。
时间: 2024-10-28 12:15:44 浏览: 47
从输入的一批正整数中求出最大值、最小值和平均值,输入0结束数据的输入
在C语言中,你可以使用标准库函数如`scanf`来读取用户的输入,数组来存储这些数字,并通过遍历数组找出最大值和它的出现次数。下面是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int numbers[100], max = 0, count = 0; // 初始化数组和计数器
int num;
printf("请输入正整数(以-1结束):");
while (scanf("%d", &num) == 1 && num != -1) { // 当用户输入非负数且不是-1时继续
numbers[count++] = num;
if (num > max) { // 如果当前数大于已知的最大数,则更新max
max = num;
}
}
// 检查最后一个输入是否为-1
if (num == -1) {
count--; // 因为输入了-1,所以实际上我们只记录了count-1个数
} else {
printf("最大数是:%d\n", max);
}
printf("最大数出现了 %d 次。\n", count);
return 0;
}
```
在这个程序中,当用户输入-1时,循环会终止,然后我们检查最后一个输入(由于数组下标从0开始,所以数组元素的数量比输入的实际个数少1),并输出最大数及其出现的次数。
阅读全文