JokeyLover 2023-05-26 18:01 采纳率: 0%
浏览 181
已结题

c语言不太懂,有人会做吗

某班有最多不超过30人(具体人数由键盘输入)参加期末考试,最多不超过6门(具体门数由键盘输入)。定义结构体类型描述学生信息,每个学生信息包括:学号、姓名、多门课的成绩、总成绩和平均成绩。用结构体数组作为函数参数,编程实现如下菜单驱动的学生成绩管理系统。(注:红色部分为必做功能,黑色部分为选做功能)录入每个学生的学号、姓名和各科考试成绩。计算每门课程的总分和平均分。计算每个学生的总分和平均分。按每个学生的总分由高到低排出名次表。按学号由小到大排出成绩表。按姓名的字典顺序排出成绩表。按学号查询学生排名极其考试成绩。按姓名查询学生排名极其考试成绩。按优秀(90100)、良好(8090)、中等(7080)、及格(6070)、不及格(0~59)5个类别,对每门课程分别统计每个类别的人数以及所占的百分比。输出每个学生的学号、姓名、各科考试成绩以及每门课程的总分和平均分。要求程序运行后先显示如下菜单,并提示用户输入选项:
Input record
Caculate total and average score of every course
Caculate total and average score of every student
Sort in descending order by total score of every student
Sort in ascending order by number
Sort in dictionary order by name
Search by number
Search by name
Statistic analysis for every course
List record
Exit
Please input your choice:

  • 写回答

4条回答 默认 最新

  • 还有头发的程序员- 2023-05-27 16:15
    关注
    获得0.45元问题酬金

    可以借鉴下

    #include<iostream>
    #include<stdio.h>
    #include<stdlib.h> 
    #include<string.h>
    using namespace std;
    typedef struct PNode*LinkList;
    typedef struct PNode{
        int stdio;
        char name[30];
        double chinese;
        double math;
        double english;
        double politics;
        double sum;
        PNode *next;
    }PNode;
     
    int main(){    
        LinkList llist=(LinkList)malloc(sizeof(PNode));
        llist->next=NULL;
        int a,b=1;
        while(b){
            printf("\n-----------------------学生成绩管理系统-----------------------\n");
            printf("请选择你需要的功能:\n");
            printf(" 1.查找     2.插入    3.排序     4.展示     5.删除     6.退出\n");
            scanf("%d",&a);
            switch(a){
                case 1:printf("\n-----------------------学生成绩查找功能-----------------------\n"); check(llist);break;
                case 2:printf("\n-----------------------学生成绩插入功能-----------------------\n"); input(llist);break; 
                case 3:printf("\n-----------------------学生成绩排序功能-----------------------\n"); sortList(llist);break;
                case 4:printf("\n-----------------------学生成绩展示功能-----------------------\n"); display(llist);break; 
                case 5:printf("\n-----------------------学生成绩删除功能-----------------------\n"); deleteList(llist);break; 
                case 6:b = 0; break; 
                default:printf("输入有误!请重新输入!\n");
            }    
        }
        printf("\n-----------------------已退出成绩管理系统-----------------------\n"); 
        return 0;
    }
    
    
    评论

报告相同问题?

问题事件

  • 系统已结题 6月3日
  • 创建了问题 5月26日

悬赏问题

  • ¥15 铜与钢双金属板叠加在一起每种材料300mm长,18mm宽,4mm厚一端固定并加热至80℃,当加热端温度保持不变时另一端的稳态温度。ansys
  • ¥15 django5安装失败
  • ¥15 Java与Hbase相关问题
  • ¥15 后缀 crn 游戏文件提取资源
  • ¥15 ANSYS分析简单钎焊问题
  • ¥20 bash代码推送不上去 git fetch origin master #失败了
  • ¥15 LOL外服加入了反作弊系统,现在游戏录像rofl文件离线都无法打开
  • ¥15 在centos7安装conda
  • ¥15 c#调用yolo3 dll文件获取的数据对不上
  • ¥20 WPF 如何实现多语言,label 和cs(live Charts)中是否都能翻译