C++编写一个程序,输入多个数,确定和打印其中最大的两个数
时间: 2023-11-28 08:47:59 浏览: 34
以下是一个简单的C++程序,可以实现输入多个数并确定和打印其中的最大两个数:
```c++
#include <iostream>
#include <climits> // 包含INT_MIN和INT_MAX常量
using namespace std;
int main() {
int max1 = INT_MIN, max2 = INT_MIN; // 初始化为int型最小值
int n;
cout << "请输入多个数(输入0结束):" << endl;
cin >> n;
while (n != 0) {
if (n > max1) {
max2 = max1;
max1 = n;
} else if (n > max2) {
max2 = n;
}
cin >> n; // 继续输入下一个数
}
if (max2 == INT_MIN) {
cout << "输入的数不足两个!" << endl;
} else {
cout << "最大的两个数分别为:" << max1 << " 和 " << max2 << endl;
}
return 0;
}
```
程序首先定义两个变量`max1`和`max2`,分别用于存储最大的两个数。然后程序使用`cin`从标准输入读取一个整数`n`,如果输入的`n`大于`max1`,则将`max1`的值更新为`n`,同时将原先的`max1`值更新为`max2`;如果输入的`n`不大于`max1`但大于`max2`,则将`max2`的值更新为`n`。程序使用一个while循环来不断读取输入的数,直到输入了0。最后判断`max2`是否被更新过,如果没有,则说明输入的数不足两个,否则打印出最大的两个数。
需要注意的是,程序中使用了`climits`库中的常量`INT_MIN`和`INT_MAX`,分别表示int型的最小值和最大值。