C语言输入若干个整数,输入-1时停止输入。输出删去唯一最大值后的所有值。
时间: 2023-12-10 22:38:25 浏览: 87
以下是C语言程序实现:
```c
#include <stdio.h>
int main()
{
int max = -1; // 用于记录最大值
int count = 0; // 用于记录输入的数的个数
int nums[100]; // 用于存储输入的数
// 输入若干个整数,输入-1时停止输入
int num;
while (1) {
scanf("%d", &num);
if (num == -1) {
break;
}
nums[count++] = num;
if (num > max) {
max = num;
}
}
// 输出删去唯一最大值后的所有值
for (int i = 0; i < count; i++) {
if (nums[i] != max || (nums[i] == max && i > 0 && nums[i-1] == max)) {
printf("%d ", nums[i]);
}
}
return 0;
}
```
程序思路:
1. 定义变量 `max` 记录最大值,初始值为 -1。
2. 定义变量 `count` 记录输入的数的个数,初始值为 0。
3. 定义数组 `nums` 存储输入的数。
4. 循环输入若干个整数,输入 -1 时停止输入,将输入的数存储到数组 `nums` 中,同时更新最大值 `max`。
5. 循环遍历数组 `nums`,判断是否是最大值,并且是否是唯一的最大值,如果是,则不输出;否则输出该数。
6. 完成。
阅读全文