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

 更新时间:2022年03月02日 09:27:30   作者:reg183  
这篇文章主要为大家详细介绍了C语言学生成绩管理系统源码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了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 ");
}

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

相关文章

  • 深入了解C++中常用的三个智能指针

    深入了解C++中常用的三个智能指针

    C++是一门强大的编程语言,但是在内存管理方面却存在着一些问题。手动管理内存不仅费时费力,而且容易出错。因此,C++中引入了智能指针这一概念,以更好地管理内存,下面就来详细讲讲C++中常用的三个智能指针吧
    2023-05-05
  • C++实现LeetCode(55.跳跃游戏)

    C++实现LeetCode(55.跳跃游戏)

    这篇文章主要介绍了C++实现LeetCode(55.跳跃游戏),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • C语言实现歌曲信息管理系统

    C语言实现歌曲信息管理系统

    这篇文章主要为大家详细介绍了C语言实现歌曲信息管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • C语言结构体指针的具体使用

    C语言结构体指针的具体使用

    结构体指针是一种非常有用的数据类型,它可以让我们更方便地操作结构体,本文主要介绍了C语言结构体指针的具体使用,非常具有实用价值,需要的朋友可以参考下
    2023-05-05
  • C++数据结构之堆详解

    C++数据结构之堆详解

    本文详细讲解了C++数据结构之堆,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • C/C++中字符串流详解及其作用介绍

    C/C++中字符串流详解及其作用介绍

    这篇文章主要介绍了C/C++中字符串流详解及其作用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • 数据结构 双向链表的创建和读取详解及实例代码

    数据结构 双向链表的创建和读取详解及实例代码

    这篇文章主要介绍了数据结构 双向链表的创建和读取详解及实例代码的相关资料,需要的朋友可以参考下
    2017-03-03
  • C++探索构造函数私有化会产生什么结果

    C++探索构造函数私有化会产生什么结果

    C++的构造函数的作⽤:初始化类对象的数据成员。即类的对象被创建的时候,编译系统对该对象分配内存空间,并⾃动调⽤构造函数,完成类成员的初始化。构造函数的特点:以类名作为函数名,⽆返回类型
    2022-05-05
  • C++ Vector用法深入剖析

    C++ Vector用法深入剖析

    C++ Vector应用方式是比较特殊的,我们将会在这篇文章中针对于它的应用方式进行一个详细的介绍,希望大家能充分掌握这一应用技巧
    2014-08-08
  • C++ Explicit关键字详细解析

    C++ Explicit关键字详细解析

    以下是对C++中Explicit关键字的用法进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2013-09-09

最新评论