一个输出不及格学生的程序,不知道为什么只能输出第一个不及格学生,是不是只能返回一个数呢?
main()
{
int *search(int (*b)[4],int n);
int a[3][4]={{60,30,63,65},{70,55,60,90},{20,90,84,96}};
int i,*p;
p=search(a,3);
for(i=0;i<4;i++)
printf("%d ",*(p+i));
printf("\n");
}
int *search(int (*b)[4],int n)
{
int i,j,k,*q;
for(i=0;i<n;i++)
{
q=*(b+i+1);
for(j=0;j<4;j++)
{
if(*(*(b+i)+j)<60)
{
q=*(b+i);
printf("No %d scores are: ",i+1);
return(q);
}
}
}
}
[此贴子已经被作者于2007-10-21 16:36:16编辑过]