题目:定义一个二维数组,保存M个同学N门课程的成绩,输出一门课程及以上不及格的同学信息
#include<stdio.h>
#define M 4
#define N 3
int main(){
void search(int (*p)[N]);
//(*p)[N]是一个指针,指向二维数组中第i行
int stu[M][N];
int i,j;
for(i=0;i<M;i++)
for(j=0;j<N;j++)
scanf("%d",&stu[i][j]);
printf("\n不及格的同学有:\n");
search(stu);
return 0;
}
void search(int (*p)[N]){
int i,j,flag;
for(i=0;i<M;i++){
flag=0;
for(j=0;j<N;j++)
if ( (*(*(p+i)+j))<60){
flag=1;
break;
}
if(flag){
printf("No.%d不及格",i+1);
for(j=0;j<N;j++)
printf("%d ",*(*(p+i)+j));
printf("\n");
}
}
}
int (*p)[N]
p是一个指针变量,指向含有10个int元素的一维数组。
int *p[N]
p是一个数组,数组中有10个int元素