c语言学生信息包含:学号、姓名、专业、语文成绩、数学成绩、体育成绩。

快速查找指定学号学生的信息及在学生列表中的位置;
查找语文成绩比数学成绩好的学生;
统计每个专业的人数;

1、定义函数体(也可以用数组)来存储学生信息:a学号 b姓名(字符串) c专业(按照要求定义)d语文成绩 e数学成绩 f体育成绩
2、快速查找:找到这个学生的学号,把这个学号对应的函数体下标记下,便可以找出学生信息
3、将学生函数体中的 d语文成绩和e数学成绩 遍历一遍,每次比较一下,如果语文成绩比数学成绩好输出
4、每发现一个专业就将这个专业的 计数cnt 加1,便能统计出每个专业的人数

如有错误,请大神指出。望采纳,谢谢

首先不确定你是直接要代码,还是要方案。如果要方案的话,可以给你说下编写代码的方案;如果要代码的话,估计得等段时间,这几天郑州情况特殊,没有条件写。我就简单的说说,希望对你有帮助。
第一:解决这类问题,主要是想好数据怎么存储。这个估计是你的一个作业,不涉及到数据库。因此学生的信息可以定义一个结构体,例如

struct Student{  
int sno;  
char[20] sname;  
char[50] smajor;//专业  
int chinese_score;  
int math_score;  
int sport_score;
};

第二:定义一个结构体数组,即Student st[100],即100个学生信息。这个长度可以自己定义,接着把每个学生的信息依次赋值到这个数组中。

第三:解决上面的三个问题:
问题1:根据学号信息快速找到学生信息,可以通过for循环,依次比对st中的每个学号是否与要求的相等,如果相等,则返回数组的下标,即对应的位置。
问题2:for循环,比较st中每项的语文成绩和数学成绩的大小,如果语文成绩大于数学成绩,则输出对应的学生信息,并继续向下执行,直到for循环结束。
问题3:预先知道专业的种类,给每个专业定义一个统计变量。均初始化0,使用for循环,在循环体中判断当前项的专业是哪一个,如果等于某个专业,则该专业的统计变量+1,continue,继续执行for循环。直到遍历结束,就得到每个专业的人数。​