济南做网站知识今天的新闻头条最新消息
下面的代码实现了以下功能:
-
定义了一个函数
getFailStudent
,它接收一个指向整数数组的指针,并遍历该数组,查找是否存在不及格的成绩。如果找到了不及格的成绩,就返回指向不及格学生所在行的指针;否则返回NULL
。 -
在
main
函数中,定义了一个二维整数数组score
,表示了三个学生的四门课程成绩。 -
使用
getFailStudent
函数对每个学生的成绩进行检查。如果有不及格的科目,就打印该学生的学生号(即学生在数组中的索引)。
这个程序的主要目的是找出哪些学生有不及格的科目。在每次检查中,它遍历每个学生的成绩,如果有不及格的成绩,就输出该学生的学生号。
#include <stdio.h>int *getFailStudent(int *pstu)
{int j;for(j=0;j<4;j++){if(*(pstu+j) < 60){return pstu;//返回不及格学生的那行地址}}return NULL;
}int main()
{int *ppos;int pos;int score[3][4]={{66,66,66,67},{60,66,77,88},{99,55,66,54}};for(int i=0;i<3;i++){ppos = getFailStudent(score[i]);if(ppos != NULL){printf("第%d个学生有不及格的科目\n",i+1); }}return 0;
}
//找出其中有不及格课程的学生及其学生号,那不就是找出有不及格学生的学生号吗
//分别判断三个学生有无不及格的课程,有的话,记录地址返回main,在main中打印
下面这段代码使用了指针函数的知识,实现了根据用户输入的学生编号,输出该学生的成绩。以下是代码的总结:
-
getScoreFromThree
函数是一个指针函数,它接收两个参数:学生编号pos
和指向二维数组的指针pstu
。该函数根据学生编号确定该学生在数组中的位置,并返回指向该学生成绩数组的指针。 -
在
main
函数中,定义了一个整型指针ppos
和一个整型变量pos
,以及一个二维整型数组score
,表示三个学生的四门课程成绩。 -
程序首先通过
puts
函数提示用户输入要查询的学生编号,并通过scanf
函数读取用户的输入。 -
接着调用
getScoreFromThree
函数,将用户输入的学生编号和成绩数组作为参数传递进去,获取到该学生的成绩数组的指针,并将其赋值给ppos
。 -
最后,使用
ppos
指针遍历输出该学生的成绩。
这段代码的主要功能是根据用户输入的学生编号,输出该学生的成绩。
#include <stdio.h>int *getScoreFromThree(int pos,int (*pstu)[4])
{int *p;p = *(pstu+pos-1);return p;
}int main()
{int *ppos;int pos;int score[3][4]={{11,22,33,44},{55,66,77,88},{99,32,43,54}};puts("请问你想知道第几个学生的成绩:");scanf("%d",&pos);ppos = getScoreFromThree(pos,score);printf("第%d个学生的成绩是: ",pos);for(int i=0;i<4;i++){printf("%d ",ppos[i]);}return 0;
}