这段c语言程序编译通过了,可是运行后后面的地方不对

题目:
从键盘输入4个学生的学号、姓名、语文、数学、英语信息,然后计算出每个学生的平均成绩,最后按平均成绩从高到低的顺序输出。
要求:学生的信息包括学号、姓名、语文、数学、英语、平均成绩。4个学生的成绩存放在一维数组中。
代码:

#include<stdio.h>
int main()
{
struct studet{
int number[10];
char name[10];
int grade[3];
double avg;
}stu[4],k;
int i,j,sum;
printf("请依次输入学号,姓名,语文、数学、英语成绩:\n");
for(i = 0;i < 4;i++)
{
printf("第%d名学生的信息:\n",i + 1);
scanf("%d",&stu[i].number);
scanf("%s",&stu[i].name);
for(j = 0,sum = 0;j < 3;j++)
{
scanf("%d",&stu[i].grade[j]);
sum += stu[i].grade[j];
}
stu[i].avg = sum/3;
}
for(i = 0;i < 2;i++)
{
for(j = i + 1;j < 3;j++)
if(stu[i].avg < stu[j].avg)
{
k = stu[i];
stu[i] = stu[j];
stu[j] = k;
}
}
for(i = 0;i < 3;i++)
{
printf("学号姓名:%d %s\n",stu[i].number,stu[i].name);
printf("语文数学英语:%d %d %d\n",stu[i].grade[0],stu[i].grade[1],stu[i].grade[2]);
printf("平均成绩:%d\n",stu[i].avg);
}
return 0;
}

第1个回答  2014-06-25
你链表的代码呢?怎么没把那几个函数给出来。你用gdb run 一下,哪里有segmentation fault会告诉你的追问

我刚学c语言不久,链表还没学,那几个函数指的是什么?编译一点错误没有。麻烦帮忙运行找一下。