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

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

程序要求

每个学生的信息为:学号、姓名、性别、家庭住址、联系电话、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教师评分、综合测评总分、综合测评名次。考试平均成绩、同学互评分、品德成绩、任课教师评分分别占综合测评总分的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、CC++、python、matlab等课程设计

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

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

接下来就是效果图展示:

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

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

    printf("
	学号:%.0d 姓名:%s 

	语文:%d 数学:%d 英语:%d 品德成绩:%d 老师评分:%d

",data[i].number,info[i].name,data[i].chinese,data[i].math,data[i].english,data[i].pinde,data[i].teacher);

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

");  data_xieru(); return;              //写入文件
            }
            case 2: return;
            default : printf("输入错误!请重新输入!");break;
        }
        break;
    }
    printf("

		");
    system("pause");
}
原文地址:https://www.cnblogs.com/crh666/p/12796883.html