输入若干整数,输出最大值和最小值最简单
时间: 2024-05-03 12:19:55 浏览: 20
的做法是先将第一个数作为最大值和最小值,然后逐个比较后续的数,更新最大值和最小值。
示例代码:
```
#include <iostream>
using namespace std;
int main() {
int n, x, max, min;
// 输入整数个数
cin >> n;
// 输入第一个数,作为最大值和最小值
cin >> x;
max = x;
min = x;
// 逐个比较后续的数,更新最大值和最小值
for (int i = 1; i < n; i++) {
cin >> x;
if (x > max) {
max = x;
}
if (x < min) {
min = x;
}
}
// 输出最大值和最小值
cout << "最大值:" << max << endl;
cout << "最小值:" << min << endl;
return 0;
}
```
相关问题
用Java输入若干整数,输出最大值和最小值
下面是一个示例代码,可以输入任意多个整数,然后输出它们的最大值和最小值:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int max = Integer.MIN_VALUE;
int min = Integer.MAX_VALUE;
while (scanner.hasNextInt()) {
int num = scanner.nextInt();
if (num > max) {
max = num;
}
if (num < min) {
min = num;
}
}
System.out.println("最大值:" + max);
System.out.println("最小值:" + min);
}
}
```
在这个示例代码中,我们使用了`Scanner`类来读取用户输入的整数,然后使用两个变量`max`和`min`来记录最大值和最小值。在每次读取到一个新的整数时,我们分别与`max`和`min`比较,如果比它们大或小,则更新它们的值。最后输出最大值和最小值即可。
输入若干整数 输出最小值和最大值
算法1:
1. 读入第一个整数,将其设为最小值和最大值;
2. 从第二个整数开始,若该整数比当前最小值小,则更新最小值,若该整数比当前最大值大,则更新最大值;
3. 重复步骤2,直到输入结束;
4. 输出最小值和最大值。
时间复杂度:$O(n)$,其中 $n$ 是输入的整数个数。
C++ 代码:
```cpp
#include <iostream>
using namespace std;
int main() {
int n, min_val, max_val;
cin >> n;
min_val = max_val = n;
while (cin >> n) {
if (n < min_val) min_val = n;
if (n > max_val) max_val = n;
}
cout << "最小值:" << min_val << endl;
cout << "最大值:" << max_val << endl;
return 0;
}
```
算法2:
1. 读入所有整数,存储在一个数组中;
2. 对数组进行排序,输出第一个和最后一个元素即为最小值和最大值。
时间复杂度:$O(n \log n)$,其中 $n$ 是输入的整数个数。
C++ 代码:
```cpp
#include <iostream>
#include <algorithm>
using namespace std;
const int MAXN = 1000; // 数组最大长度
int a[MAXN]; // 存储输入的整数
int main() {
int n, cnt = 0;
while (cin >> n) {
a[cnt++] = n;
}
sort(a, a+cnt);
cout << "最小值:" << a[0] << endl;
cout << "最大值:" << a[cnt-1] << endl;
return 0;
}
```