用c,编写程序读取正整数,找出它们的最大数,然后计算该最大数出现的次数。输入以-1结束。
时间: 2024-04-30 12:25:21 浏览: 76
以下是用C语言编写的程序,实现读取正整数,找出最大数并计算最大数出现的次数的功能:
```c
#include <stdio.h>
int main() {
int num, max_num = 0, count = 0;
printf("请输入正整数,以-1结束:\n");
while (1) {
scanf("%d", &num);
if (num == -1) {
break;
}
if (num > max_num) {
max_num = num;
count = 1;
} else if (num == max_num) {
count++;
}
}
printf("最大数为:%d,出现次数为:%d\n", max_num, count);
return 0;
}
```
程序流程说明:
1. 定义变量 `num` 存储输入的正整数,`max_num` 存储最大数,`count` 存储最大数出现的次数,初始值都为0。
2. 在屏幕上输出提示信息,让用户依次输入正整数,以-1结束。
3. 用 `while` 循环读取用户输入的正整数,如果输入的是-1,则跳出循环。
4. 对于每个输入的正整数,如果它比当前的最大数还大,则将它赋值给 `max_num`,并将 `count` 的值设为1,表示这个新的最大数出现了一次。
5. 如果输入的正整数等于当前的最大数,则将 `count` 的值加1,表示这个最大数又出现了一次。
6. 循环结束后,在屏幕上输出最大数和它出现的次数。
7. 程序结束。
注意事项:
1. 在读取用户输入时,需要用 `%d` 格式符来指定读取一个整数。
2. 在读取完最后一个正整数后,需要判断它是否是-1,如果是,则跳出循环。
3. 如果输入的所有正整数都小于等于0,则程序不会输出任何结果。
阅读全文