编写函数实现找出一维数组中元素的最大值,并返回最大值。c++
时间: 2023-06-09 22:05:30 浏览: 51
好的,我可以为您编写这样的函数。
以下是示例代码:
```c
#include <stdio.h>
int findMax(int arr[], int len){
int max = arr[0];
for(int i=1; i<len; i++){
if(arr[i] > max){
max = arr[i];
}
}
return max;
}
int main(){
int arr[] = {1, 5, 7, -10, 13};
int len = sizeof(arr)/sizeof(arr[0]);
int max = findMax(arr, len);
printf("The maximum value in the array is %d\n", max);
return 0;
}
```
这个函数会遍历整个数组,将最大值赋值给变量 max,最后将 max 返回。在这个示例中,数组中最大值为 13。
请查看代码并告诉我您是否理解它。
相关问题
编写一个函数 maxfun,找出一维数组元素中最大的值和它所在的下标,最大值和相应的下标通过形参返回
好的,这是一个简单的 C++ 函数 maxfun 的实现,它接收一个一维数组和数组长度作为参数,返回值为最大值,通过引用形参返回最大值所在的下标:
```cpp
int maxfun(int arr[], int len, int& index) {
int max_val = arr[0];
index = 0;
for (int i = 1; i < len; i++) {
if (arr[i] > max_val) {
max_val = arr[i];
index = i;
}
}
return max_val;
}
```
使用方法如下:
```cpp
int arr[] = { 1, 7, 3, 9, 5 };
int len = sizeof(arr) / sizeof(int);
int index, max_val = maxfun(arr, len, index);
std::cout << "The maximum value is " << max_val << " and its index is " << index << std::endl;
```
输出结果为:
```
The maximum value is 9 and its index is 3
```
编写一个c++程序,寻找二维数组中每一行的最大值
可以使用以下代码实现:
```c
#include <stdio.h>
#define ROWS 3
#define COLS 4
void findMaxInRows(int arr[][COLS], int *maxArr);
int main() {
int arr[ROWS][COLS] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
int maxArr[ROWS];
findMaxInRows(arr, maxArr);
for(int i=0; i<ROWS; i++) {
printf("Max in row %d is %d\n", i, maxArr[i]);
}
return 0;
}
void findMaxInRows(int arr[][COLS], int *maxArr) {
for(int i=0; i<ROWS; i++) {
int max = arr[i][0];
for(int j=1; j<COLS; j++) {
if(arr[i][j] > max) {
max = arr[i][j];
}
}
maxArr[i] = max;
}
}
```
这个程序首先定义了一个二维数组和一个空数组,然后使用 findMaxInRows 函数找到每行的最大值,并将最大值存储在空数组中。最后,使用 for 循环打印每行的最大值。