C语言课程设计:学生综合信息测评系统(附源码)

2021-02-04 07:15

阅读:497

标签:成绩   default   nta   修改   sys   oid   tle   term   csdn   

题目:学生综合信息测评系统

程序要求

每个学生的信息为:学号、姓名、性别、家庭住址、联系电话、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教师评分、综合测评总分、综合测评名次。考试平均成绩、同学互评分、品德成绩、任课教师评分分别占综合测评总分的60%,10%,10%,20%。

A、学生信息处理

(1) 输入学生信息、学号、姓名、性别、家庭住址、联系电话,按学号以小到大的顺序存入文件中。

(2) 插入(修改)同学信息:

(3) 删除同学信息:

(4) 浏览学生信息:

B、学生数据处理

(1) 按考试科目录入学生成绩并且按公式:

考试成绩=(语文+数学+外语)/3 计算考试成绩,并计算考试名次,提示:先把学生信息读入数组,然后按提示输入每科成绩,计算考试成绩,求出名次,最后把学生记录写入一个文件中。

(2) 学生测评数据输入并计算综合测评总分及名次。

综合测评总分=(考试成绩)*0.6+(同学互评分)*0.1+品德成绩*0.1+任课老师评分*0.2。

(3) 学生数据管理

输入学号,读出并显示该同学信息,输入新数据,将改后信息写入文件

(4) 学生数据查询:

输入学号或其他信息,即读出所有数据信息,并显示出来。

博主VX:15813406574,永久在线,承接JAVA、C\C++、python、matlab等课程设计

博主VX:15813406574,永久在线,承接JAVA、C\C++、python、matlab等课程设计

博主VX:15813406574,永久在线,承接JAVA、C\C++、python、matlab等课程设计

技术图片

技术图片

接下来就是效果图展示:

技术图片技术图片?

技术图片技术图片?

技术图片技术图片?

技术图片技术图片?

技术图片技术图片?

技术图片技术图片?

核心代码展示(由于篇幅限制这里就只展示部分代码,如果需要全部代码的可以私聊)

void data_xiugai()                                        //数据修改
{
    int pp;
    int i,j,k;
    data_daoru();
    printf("\n\t请输入要修改学生的学号:");
    scanf("%d",&pp);
    printf("\n");
    for(i=0;i){
        if(data[i].number==pp) break;
         
    }
    if(i>=count) { printf("\n\t没有找到该学生!\n"); return;}

    printf("\n\t学号:%.0d 姓名:%s \n\n\t语文:%d 数学:%d 英语:%d 品德成绩:%d 老师评分:%d\n\n",data[i].number,info[i].name,data[i].chinese,data[i].math,data[i].english,data[i].pinde,data[i].teacher);

    printf("\n\t是否修改?\t 1.是 \t 2.否 \t ");
    while(1){                                             //询问
        scanf("%d",&j);
        switch(j){
            case 1:{
                for(k=0;k//重新排名次
                    if(data[i].avg>data[k].avg) data[k].ksmc=data[k].ksmc-1;
                }
                printf("\n\t请输入语文成绩:");
                scanf("%d",&data[i].chinese);
                while( data[i].chinese   0 || data[i].chinese  > 100 )
                {  printf("\t对不起你输入的数据不是 1-100 之间,请从新输入真确的数值!\n");
                printf("\t请输入老师评分:");
                scanf("%d",&data[i].chinese );
                }
    
                printf("\t请输入数学成绩:");
                scanf("%d",&data[i].math);
                while( data[i].math  0 || data[i].math  > 100 )
                {   printf("\t对不起你输入的数据不是 1-100 之间,请从新输入真确的数值!\n");
                    printf("\t请输入数学成绩:");
                    scanf("%d",&data[i].math);
                }
                printf("\t请输入英语成绩:");
                scanf("%d",&data[i].english);
                while( data[i].english  0 || data[i].english  > 100 )
                {     printf("\t对不起你输入的数据不是 1-100 之间,请从新输入真确的数值!\n");
                    printf("\t请输入英语成绩:");
                    scanf("%d",&data[i].english);
                }
                printf("\n\t请输入同学互评成绩:");
                   scanf("%d",&data[i].huping );
                while( data[i].huping  0 || data[i].huping  > 100 )
                {  printf("\t对不起你输入的数据不是 1-100 之间,请从新输入真确的数值!\n");
                    printf("\t请输入同学互评成绩:");
                       scanf("%d",&data[i].huping );
                }
                printf("\n\t请输入品德成绩:");
                scanf("%d",&data[i].pinde);
                while( data[i].pinde  0 || data[i].pinde  > 100 )
                {  printf("\t对不起你输入的数据不是 1-100 之间,请从新输入真确的数值!\n");
                 printf("\t请输入品德成绩:");
                scanf("%d",&data[i].pinde);
                }
                printf("\t请输入老师评分:");
                scanf("%d",&data[i].teacher);
                while( data[i].teacher  0 || data[i].teacher  > 100 )
                {  printf("\t对不起你输入的数据不是 1-100 之间,请从新输入真确的数值!\n");
                  printf("\t请输入老师评分:");
                scanf("%d",&data[i].teacher);
                }
                data[i].avg=(data[i].chinese+data[i].math+data[i].english)/3.0;
                data[i].ceping=(data[i].avg*0.6+data[i].huping *0.1+ data[i].pinde*0.1+data[i].teacher*0.2);
                data[i].ksmc=count;

                for(k=0;k//重新排名次
                    if(data[i].avg>data[k].avg){
                         data[k].ksmc=data[k].ksmc+1;
                          if(data[i].ksmc>data[k].ksmc-1)
                            data[i].ksmc=data[k].ksmc-1;
                    }
                }

                printf("\n\t修改成功!\n\n");  data_xieru(); return;              //写入文件
            }
            case 2: return;
            default : printf("输入错误!请重新输入!");break;
        }
        break;
    }
    printf("\n\n\t\t");
    system("pause");
}

 

技术图片

C语言课程设计:学生综合信息测评系统(附源码)

标签:成绩   default   nta   修改   sys   oid   tle   term   csdn   

原文地址:https://www.cnblogs.com/crh666/p/12796883.html


评论


亲,登录后才可以留言!