Lansional 2022-11-17 17:39 采纳率: 88%
浏览 79
已结题

问题:有N个学生的信息,要求按照成绩的高低顺序输出各学生的信息

问题遇到的现象和发生背景

问题:有N个学生的信息,要求按照成绩的高低顺序输出各学生的信息
不知道错在哪,不能正常输出

用代码块功能插入代码,请勿粘贴截图
#include<stdio.h>
#define N 5

int main()
{
    struct Student
    {
        int num;
        char name[20];
        float score;
    };

    struct Student stu[5] = { {10101, "Zhang", 78}, {10103, "Wang", 98.5}, {10106, "Li", 86}, {10108, "Ling", 73.5}, {10110, "Sun", 100} };
    int  i, j;
    struct Student t;
    for (i = 0; i < N - 1; i++)
    {
        for (j = i + 1; j < N; i++)
        {
            if (stu[i].score < stu[j].score)
            {
                t = stu[j];
                stu[j] = stu[i];
                stu[i] = t;
            }
        }
    }
    for (i = 0; i < N; i++)
    {
        printf("%d\t%s\t%.2f\n", stu[i].num, stu[i].name, stu[i].score);
    }
    return 0;
}


运行结果及报错内容

if 那里显示访问异常

  • 写回答

3条回答 默认 最新

  • honestman_ 2022-11-17 18:10
    关注
    
    #include <stdio.h>
    struct Student{
        int num;
        char name[20];
        float score;
    };
    int main(){
        struct Student stu[5]={{10101,"Zhang",78},{10103,"Wang",98.5},{10106,"Li",86},{10108,"Ling",73.5},{10110,"Sun",100}};
        struct Student temp;
        int n=5;
        int i,j,k;
        printf("由高到低排名:\n");
        for(i=0;i<n-1;i++){
            k=i;
            for(j=i+1;j<n;j++)
                if(stu[j].score>stu[k].score)
                    k=j;
                temp=stu[k];
                stu[k]=stu[i];
                stu[i]=temp;
        }
        for(i=0;i<n;i++)
            printf("%d%8s%8.2f\n",stu[i].num,stu[i].name,stu[i].score);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月25日
  • 已采纳回答 11月17日
  • 创建了问题 11月17日

悬赏问题

  • ¥15 用pytorch实现PPO算法
  • ¥15 关于调制信号的星座图?
  • ¥30 前端传参时,后端接收不到参数
  • ¥15 这是有什么问题吗,我检查许可证了但是显示有呢
  • ¥15 机器学习预测遇到的目标函数问题
  • ¥15 python的EOFError该怎么解决?
  • ¥15 Fluent,液体进入旋转区域体积分数不连续
  • ¥15 java linux下将docx文件转pdf
  • ¥15 maven无法下载依赖包
  • ¥15 关于pycharm, Callable[[str],bool]作为方法参数使用时, lambda 类型不提示问题