小屿睡醒了没 2022-11-28 14:24 采纳率: 60%
浏览 46
已结题

C语言简单排序问题有偿求解

在主函数里已给定成绩,学号,姓名,三者从左至右一一对应;写一个排序函数,按成绩从高到低排序,来实现信息记录的调整,保证学号,姓名和成绩对应得上

img

  • 写回答

5条回答 默认 最新

  • 语言-逆行者 2022-11-28 14:28
    关注

    马上

    img

    #include<stdio.h>
    int main(){
        int score[10]={65,88,90,98,78,86,77,90,95,18};
        int num[10]={1001,1002,1003,1004,1005,1006,1007,1008,1009,1010};
        char Name[10][30]={"Zhangsan","Zhaopeng","Lili","Lule","Xiaoxiao","Zhanle","Keke","Liulu","Changchang","Sunhe"};
        int scoreindex[10];
        for(int i=0;i<10;i++){
            score[i]=score[i]*100+i;
        }
        //冒泡排序
        for (int i = 0; i < 9; i++)//i<9进行解释①
        {
            for (int j = 0; j < 9-i; j++)//i<9-i进行解释②
            {
                if (score[j] > score[j + 1])//满足条件进行交换
                {
                    int temp = score[j];
                    score[j] = score[j + 1];
                    score[j + 1] = temp;
                }
            }
        }
        printf("学号         姓名       成绩:\n");
        for(int i=9;i>=0;i--){
            int index;
            index=score[i]%100;
            printf("%d%15s     %d\n",num[index],Name[index],score[i]/100);
        }
        return 0;
    }
    

    展开全部

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
    语言-逆行者 2022-11-28 14:36

    快写好啦(¬㉨¬)

    1
    回复
    语言-逆行者 2022-11-28 15:09

    记得采纳一下哦(´-ω-`)哦😊

    1
    回复
    语言-逆行者 2022-11-29 04:21

    采纳一下哦,亲爱的题主

    1
    回复
查看更多回答(4条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 12月6日
  • 已采纳回答 11月29日
  • 请采纳用户回复 11月28日
  • 创建了问题 11月28日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部