用c语言编程要求有三个学生,各四门课,定义二维数组score[3][4]来存放成绩。要求找出其中有不及格课程的学生并输出该学生的全部成绩。要求编写返回指针的函数search来查询学生成绩。
时间: 2023-11-27 07:18:41 浏览: 90
#include <stdio.h>
int (*search(int (*score)[4], int n))[4] { // 返回指向一维数组的指针
int i, flag = 0;
for (i = 0; i < 4; i++) {
if (score[n][i] < 60) {
flag = 1;
break;
}
}
if (flag) {
return &score[n]; // 返回指向该学生全部成绩的指针
} else {
return NULL;
}
}
int main() {
int score[3][4] = {{80, 70, 90, 85},
{60, 70, 50, 40},
{85, 90, 95, 88}};
int i, j;
for (i = 0; i < 3; i++) {
int (*p)[4] = search(score, i); // 定义指向一维数组的指针
if (p) { // 如果返回的指针不为空
printf("Student %d has failed courses:\n", i);
for (j = 0; j < 4; j++) {
printf("%d ", (*p)[j]); // 输出该学生全部成绩
}
printf("\n");
}
}
return 0;
}
阅读全文