编写自定义函数 int max( int *s , int n , int *m ) 找出数组s中最大值,并返回最大值的个数 函数的参数:s指向一个整型数组,n为数组元素的个数,指针m指向的变量,保存数组中的最大值 函数返回值:最大值的个数(>0) 用于测试函数的程序: #include<stdio.h> int main() { int s[ ] [ 5 ] = { 3,1,4,1,5,9,2,6,5,3,5,8,9,7,9,3,2,3,8,4 } ; int m , k ; k = max ( &s[0][0] , 20, &m ) ; printf ( "%d %d \n " , m, k ) ; }
时间: 2023-07-02 14:10:07 浏览: 76
以下是实现了要求的自定义函数 max:
```
#include <stdio.h>
int max(int *s, int n, int *m) {
int max_val = s[0];
int count = 1;
for (int i = 1; i < n; i++) {
if (s[i] > max_val) {
max_val = s[i];
count = 1;
} else if (s[i] == max_val) {
count++;
}
}
*m = max_val;
return count;
}
int main() {
int s[][5] = {{3,1,4,1,5},{9,2,6,5,3},{5,8,9,7,9},{3,2,3,8,4}};
int m, k;
k = max(&s[0][0], 20, &m);
printf("%d %d\n", m, k);
return 0;
}
```
在这个程序中,我们首先定义了一个二维整型数组 s,包含了20个元素,其中每行5个。然后我们调用了 max 函数,并将 s 的地址传递给它,同时也传递了数组元素个数 n 和一个指向 m 的指针。该函数计算出最大值和最大值的个数,然后将最大值存储在 m 中,并返回最大值的个数。最后,我们在主函数中打印出了 m 和 k 的值。
输出结果为:
```
9 3
```
说明数组中最大值为 9,且有 3 个 9。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![xlsx](https://img-home.csdnimg.cn/images/20210720083732.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)