输出若干个学生成绩中的最高分要求用指针函数实现
时间: 2023-06-05 12:47:10 浏览: 208
可以使用指针函数来实现输出若干个学生成绩中的最高分。具体实现方法如下:
1. 定义一个指针函数,函数名为“find_max”,参数为一个整型数组和数组长度,返回值为整型指针。
2. 在函数内部,定义一个整型变量“max”,并将数组的第一个元素赋值给“max”。
3. 遍历整个数组,如果当前元素的值大于“max”,则将当前元素的值赋给“max”。
4. 遍历完成后,返回“max”的地址。
5. 在主函数中,定义一个整型数组,并初始化数组元素。
6. 调用“find_max”函数,将返回的指针赋值给一个整型指针变量。
7. 输出最高分的值和地址。
具体代码如下:
```c
#include <stdio.h>
int* find_max(int arr[], int len) {
int max = arr[];
for (int i = 1; i < len; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
return &max;
}
int main() {
int scores[] = { 78, 89, 92, 85, 76, 90 };
int len = sizeof(scores) / sizeof(scores[]);
int* max_ptr = find_max(scores, len);
printf("最高分:%d,地址:%p\n", *max_ptr, max_ptr);
return ;
}
```