c++:数组元素的最大值 分数 10 作者 chanel 单位 中国地质大学(北京) 编写函数getMax,传入数组起始地址及数组元素个数,返回该数组的最大 值, 函数接口定义: int getMax(int *pa, int size); 其中 pa 是用户传入的数组的首地址,size是数组元素的个数。 裁判测试程序样例: #include <iostream> using namespace std; int getMax(int *pa, int size); int main() { int *a, n; cin>>n; a=new int[n]; for(int i=0;i<n;i++) cin>>a[i]; int max=getMax(a,n); delete []a; cout<<"max="<<max; return 0; } /* 请在这里填写答案 */ 输入格式: 第一行元素个数n。 第二行输入那个数组元素。 输出格式: 输出n个元素的最大值。 输入样例1: 6 1 3 89 -3 23 0 输出样例1: max=89
时间: 2024-01-02 08:03:45 浏览: 153
java 输入一个数字组成的数组(输出该数组的最大值和最小值)
C++代码如下:
```c++
#include <iostream>
using namespace std;
int getMax(int *pa, int size) {
int maxNum = pa[0]; // 假设第一个元素是最大值
for (int i = 1; i < size; i++) {
if (pa[i] > maxNum) {
maxNum = pa[i];
}
}
return maxNum;
}
int main() {
int *a, n;
cin >> n;
a = new int[n];
for (int i = 0; i < n; i++) {
cin >> a[i];
}
int max = getMax(a, n);
delete[] a;
cout << "max=" << max;
return 0;
}
```
思路解析:
定义一个变量 `maxNum` 存储当前的最大值,初始值为数组第一个元素。然后遍历整个数组,如果有比 `maxNum` 更大的元素,就将 `maxNum` 更新为该元素。最后返回 `maxNum` 即可。
注意要使用动态分配内存 `new` 和 `delete`,避免数组长度过长导致栈溢出。
阅读全文