首页 > 教育

有n个学生的信息(包括学号,姓名,成绩),要求按照成绩的高低顺序输出学生的信息。

更新时间2019-01-06 00:57:39

请问我这个编写的有什么问题吗?

#include<stdio.h>

/*********Begin*********/

struct student

{

char id[11];

char name[20];

    int score;

}student[10];

/*********End**********/

int main(void)

{

/*********Begin*********/

    int i,j,n;

    scanf("%d",&n);

    for(i=0;i<n;i++)

    {

    scanf("%s %s %d",student[i].id,student[i].name,student[i].score);

}

struct student t;

for(i=0;i<n;i++)

{

for(j=i+1;i<n+1;j++)

{

if(student[j].score>student[i].score)

{

t=student[i];

student[i]=student[j];

student[j]=t;

        }

}

}

for(i=0;i<n;i++)

printf("%s %s %d",student[i].id,student[i].name,student[i].score);

/*********End**********/

    return 0;

}


至少有一个错,输入要改为

   scanf("%s %s %d",student[i].id,student[i].name,&student[i].score);

整形的要取地址的

上一篇:化学问题。

下一篇:有事好好说什么意思