输入10个成绩,查找最高分并输出。 #include <stdio.h> int *GetMax(int score[ ], int n); int main(void) { int i, score[10], *p; for(i = 0; i < 10; i++){ scanf("%d", &score[i]); } p = ; printf("%d\n", *p); return 0; } int *GetMax(int score[ ], int n) { int i, max, pos = 0; max = score[0] ; for(i = 0 ; i < 10 ; i++){ if(score[i] > max){ max = score[i]; pos = i ; } } return ; }
时间: 2024-01-12 09:02:43 浏览: 47
您的代码有两个问题:首先,您需要将指针p赋值为GetMax函数的返回值;其次,您需要将GetMax函数的返回值修改为指向最大值的指针。请将代码修改如下:
```
#include <stdio.h>
int *GetMax(int score[ ], int n);
int main(void) {
int i, score[10], *p;
for(i = 0; i < 10; i++){
scanf("%d", &score[i]);
}
p = GetMax(score, 10); // 将p赋值为GetMax函数的返回值
printf("%d\n", *p);
return 0;
}
int *GetMax(int score[ ], int n) {
int i, max, pos = 0;
max = score[0];
for(i = 0 ; i < 10 ; i++){
if(score[i] > max){
max = score[i];
pos = i;
}
}
return &score[pos]; // 修改为指向最大值的指针
}
```
这样就可以找到输入的10个成绩中的最高分并输出了。