c++找出数组中的最小值
时间: 2023-05-19 15:03:45 浏览: 71
可以使用以下代码来找出数组中的最小值:
```c
#include <stdio.h>
int main() {
int arr[] = {5, 3, 8, 1, 9, 2};
int n = sizeof(arr) / sizeof(arr[0]);
int min = arr[0];
for (int i = 1; i < n; i++) {
if (arr[i] < min) {
min = arr[i];
}
}
printf("数组中的最小值为:%d\n", min);
return 0;
}
```
这段代码会输出数组中的最小值为 1。
相关问题
如何找出数组中最大值和最小值并赋给成员
可以使用以下的代码来找出数组中的最大值和最小值,并将其赋值给成员变量:
```c++
#include <algorithm> // 包含头文件<algorithm>
using namespace std;
class MyClass {
private:
int maxVal;
int minVal;
public:
void findMaxMin(int arr[], int size) {
maxVal = *max_element(arr, arr + size); // 使用max_element函数找出最大值
minVal = *min_element(arr, arr + size); // 使用min_element函数找出最小值
}
};
```
在这个例子中,我们使用了STL的`algorithm`头文件中的`max_element`和`min_element`函数来找出数组中的最大值和最小值。这两个函数都需要传入一个指向数组起始位置的指针和一个指向数组末尾位置的指针,它们会返回一个指向最大(最小)元素的指针。我们使用解引用运算符`*`来获取最大(最小)元素的值,并将其赋值给成员变量`maxVal`和`minVal`。
c++找出二维数组中的鞍点
鞍点指的是在行方向上是最大值,在列方向上是最小值的元素。以下是一个示例代码,可以找出二维数组中的鞍点。
```c++
#include <iostream>
using namespace std;
const int N = 100;
int a[N][N];
int main() {
int n, m;
cin >> n >> m;
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
cin >> a[i][j];
}
}
bool flag = true;
for (int i = 0; i < n; i++) {
int k = 0;
for (int j = 1; j < m; j++) {
if (a[i][j] > a[i][k]) {
k = j;
}
}
bool isSaddle = true;
for (int l = 0; l < n; l++) {
if (a[l][k] < a[i][k]) {
isSaddle = false;
break;
}
}
if (isSaddle) {
flag = false;
cout << "Saddle Point: " << a[i][k] << endl;
}
}
if (flag) {
cout << "No Saddle Point" << endl;
}
return 0;
}
```
在这个程序中,我们首先输入一个 $n\times m$ 的矩阵,然后用两个循环遍历所有的元素。对于每一行,我们找到该行的最大值,并检查该列是否是最小值。如果是,则该元素是一个鞍点,输出该元素的值。如果没有找到鞍点,则输出“无鞍点”。