您的位置:首页 > 理论基础 > 数据结构算法

求大佬帮忙看看这道题,总是出错

2017-12-19 00:49 253 查看
题目如下:

统计学生成绩。请定义一个结构体变量StudentType, 该结构体存有学生的 姓名,两门成绩:高数,英语,还有总成绩。将n个学生的姓名和其总成绩按照总成绩从高到低输出,每个学生信息输出占一行。(不会出现总成绩相同的情况)

struct StudentType {

    //姓名

    //高数成绩

    //英语成绩

    //总成绩

};

样例

输入
输出
3
Tom 80 70
Andy 80 90
John 80 80
Andy 170

John 160
Tom 150
这是我写的代码:
#include<stdio.h>

struct grade

{
char name[10];
float a;
float b;
float ave;

};

int main()

{

int i, n;
scanf_s("%d", &n);
struct grade student[99];
for (i = 0; i < n; i++)
{
scanf_s("%s",student[i].name);
scanf_s("%d%d", &student[i].a, &student[i].b);

student[i].ave = student[i].a + student[i].b;

}
int j, temp; int k;
for (i = 0; i < n - 1; i++)
{
k = i;
for (j = i + 1; j < n; j++)
{
if (student[j].ave<student[k].ave)
{
k = j;
}
if (i != k)
{
temp = student[i].ave; student[i].ave = student[k].ave; student[k].ave = temp;
}
}
for (i = 0; i<n; i++)
{

printf("%s %.f %.f\n", student[i].name, student[i].a, student[i].b);
}

}

return 0;

}

请问有错吗?调试的时候总是说scanf_s("%s",student[i].name)出错,为什么呢?谢谢啦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息