文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

C语言学生成绩管理系统源码

2024-04-02 19:55

关注

本文实例为大家分享了C语言学生成绩管理系统的具体代码,供大家参考,具体内容如下

效果如下:

代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct student{
        int num;
        char name[20];
        float score1;
        float score2;
        float score3;
        double total;
}stu[4];


void a();
void b();
void c();
void d();
void e();
int main(void)
{
    //printf("Hello World!\n");


       int n;
       while(n!=6){

           printf("\t student score manage system\n");
           printf("1-input all student's score!\n");
           printf("2-show all student's score!\n");
           printf("3-output student's average score!\n");
           printf("4-output student's score and rank!\n");
           printf("5-result output txt file!\n");
           printf("6-exit!\n");
           scanf("%d",&n);
           switch(n){
               case 1:a();break;
               case 2:b();break;
               case 3:c();break;
               case 4:d();break;
               case 5:e();break;
               case 6:printf("******ByeBye******");break;
           }
       }

    return 0;
}

//输入成绩
void a(){
    int i;
    for(i=0;i<4;i++){
        printf("input num name score1 score2 score3: ");
        scanf("%d%s%f%f%f",&stu[i].num,stu[i].name,&stu[i].score1,&stu[i].score2,&stu[i].score3);
    }

    for(i=0;i<4;i++){
        stu[i].total=stu[i].score1+stu[i].score2+stu[i].score3;
    }
}
//输出成绩
void b(){
    int i;
    printf("num \t name \t score1 \t score2 \t score3 \t total \n");
    for(i=0;i<4;i++){
        printf("%d \t %s \t %f \t %f \t %f \t %f \n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].total);
    }
}

//求平均成绩
void c(){

    double total=0;
    double avg;
    int i;
    for(i=0;i<4;i++){
        total+=stu[i].total;
    }
    avg=total/4.0;
    printf("avg is :%f \n",avg);
}

//按照总成绩排序
void d(){
    struct student temp;
    int i,j;
    for(i=0;i<4;i++){

        for(j=i+1;j<4;j++){
            temp=stu[i];
            stu[i]=stu[j];
            stu[j]=temp;
        }
    }

    printf("num \t name \t score1 \t score2 \t score3 \t total \n");
    for(i=0;i<4;i++){
        printf("%d \t %s \t %f \t %f \t %f \t %f \n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].total);
    }
}

// 保存数据到文件
void e(){

    int i;
    FILE *fp;
    fp=fopen("E:/result.txt","w");

    fprintf(fp,"num \t name \t score1 \t score2 \t score3 \t total \n");

    for(i=0;i<4;i++){
        fprintf(fp,"%d \t %s \t %f \t %f \t %f \t %f \n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].total);

    }

    printf(" save success! \n ");
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯