初学小菜勾 2022-11-25 14:05 采纳率: 100%
浏览 2
已结题

悬赏,C语言习题,在线求解

C语言习题,刚学不久遇到这种练习,对函数掌握不够,求各位带带

img

  • 写回答

3条回答 默认 最新

  • hello_world&& 2022-11-25 14:30
    关注

    先定义一个结构体类型student,包含成员学号num,姓名name,成绩score。在排序部分可使用冒泡排序,最大值部分可用“擂台法”找到最大值,也可用排序后的结果来找最大值,本代码采用第一种方法。

    
    #include<stdio.h>
    struct student{
        int num;
        char name[20];
        float score;
    };
    void input(int n,struct student stu[])
    {
        int i;
        for(i=0;i<n;i++)
        {
            printf("请输入第%d个同学的学号,姓名,成绩\n",i+1);
            scanf("%d %s %f",&stu[i].num,stu[i].name,&stu[i].score);
        }
    }
    void sort(int n,struct student stu[])
    {
        struct student t;
        int i,j;
        for(i=0;i<n-1;i++)//n个数的数列总共扫描n-1次
        {
            for(j=0;j<n-i-1;j++)//每一趟扫描到stu[n-i-2]与stu[n-i-1]比较为止结束
            {
                if(stu[j].score<stu[j+1].score)//后一位数比前一位数大的话,就交换两个数的位置(升序)
                {
                   t=stu[j+1];
                   stu[j+1]=stu[j];
                   stu[j]=t;
                }
            }
        }
        printf("成绩由高到低为:");
        for(i=0;i<n;i++)
          printf("%.2f ",stu[i].score);
       printf("\n");
    
    }
    void max(int n,struct student stu[])
    {
        struct student max1;
        max1=stu[0];
        int i;
        for(i=0;i<n;i++)
        {
            if(stu[i].score>max1.score)
                max1=stu[i];
        }
        printf("最高分学生信息: ");
        printf(" 学号:%d 姓名:%s 成绩:%f.2",max1.num,max1.name,max1.score);
    }
    int main()
    {
        struct student stu[5];
        input(5,stu);
        sort(5,stu);
        max(5,stu);
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月25日
  • 已采纳回答 11月25日
  • 修改了问题 11月25日
  • 创建了问题 11月25日

悬赏问题

  • ¥15 爬虫爬取网站的一些信息
  • ¥15 关于vue2中methods使用call修改this指向的问题
  • ¥15 idea自动补全键位冲突
  • ¥15 请教一下写代码,代码好难
  • ¥15 iis10中如何阻止别人网站重定向到我的网站
  • ¥15 滑块验证码移动速度不一致问题
  • ¥15 Utunbu中vscode下cern root工作台中写的程序root的头文件无法包含
  • ¥15 麒麟V10桌面版SP1如何配置bonding
  • ¥15 Marscode IDE 如何预览新建的 HTML 文件
  • ¥15 K8S部署二进制集群过程中calico一直报错