千家信息网

怎么用C语言实现学生成绩管理系统

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇"怎么用C语言实现学生成绩管理系统"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"
千家信息网最后更新 2025年01月19日怎么用C语言实现学生成绩管理系统

这篇"怎么用C语言实现学生成绩管理系统"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"怎么用C语言实现学生成绩管理系统"文章吧。

1、数据结构:学生信息:学号、姓名、年龄、性别、3课成绩

2、功能

(1) 增加学生记录
(2) 删除学生记录
(3) 查找学生信息(学号、姓名)
(4) 修改学生信息
(5) 按照成绩排序、求平均值、最大值、最小值

3、用户界面

主菜单
子菜单

4、 批量生成测试数据

////  main.c//  Student System////  Created by ma c on 15/7/22.//  Copyright (c) 2015年. All rights reserved.//  要求:编写一个学生成绩管理系统。#include #include#include#define N 50struct Student{    char name[20];    int sno;    int age;    char gender;    float EnglishScore;    float mathScore;    float chineseScore;}stu[N]={{"zhao",1000,20,'M',98,99,97},         {"zhao",1001,21,'F',97,96,95},         {"qian",1002,23,'M',95,96,92},         {"hong",1003,22,'F',91,93,97},         {"zhou",1004,25,'M',90,90,90},         {"feng",1005,21,'F',96,93,96},         {"wang",1006,23,'M',97,91,90},         {"chen",1007,21,'F',94,92,91},         {"geng",1008,20,'F',90,99,91},         {"tang",1009,24,'M',99,99,99}};//添加数据void add(struct Student stu[],int pos,int nums);//删除数据void Delete_name(struct Student *stu,char Name[]);//(按姓名)void Delete_sno(struct Student *stu,int Sno);//(按学号)//修改数据void update(struct Student stu[],int Sno,int len);//查询子菜单void menu(struct Student stu[],int m);void search(struct Student stu[],int n,char Name[]);//按姓名查询void search2(struct Student stu[],int n,int Num);//按学号查询void sort(struct Student stu[],int n); //按总分高低排序void print(struct Student stu[],int n);void My_print_sum(struct Student stu[],int n);void max_min(struct Student stu[],int n);//主菜单void PrintScreen(){    printf("------------------\n");    printf("** 1.增加学生记录 **\n");    printf("** 2.删除学生记录 **\n");    printf("** 3.查找学生记录 **\n");    printf("** 4.修改学生记录 **\n");    printf("** 0.退出管理系统 **\n");    printf("------------------\n");}//删除子菜单void deleteScreen(){    printf("------------------\n");    printf("** 0.按姓名删除数据**\n");    printf("** 1.按学号删除数据**\n");    printf("** 2.返回主菜单   **\n");    printf("------------------\n");    printf("please select 0-1:");}//查找子菜单void seekScreen(){    printf("-------------------------\n");    printf("****** 1.按姓名查找信息    *\n");    printf("****** 2.按学号查找信息    *\n");    printf("****** 3.查看所有学生成绩  *\n");    printf("****** 4.成绩名次排序(总分)*\n");    printf("****** 5.查看成绩最优最差  *\n");    printf("****** 6.返回主菜单       *\n");    printf("-------------------------\n");    printf("please you select 1-6:");}//定义全局静态变量,统计目前结构体数组中的人数static int count = 10;//主函数int main(int argc, const char * argv[]){ int nums,temp; int snos; char names[20]; while(1) {    PrintScreen();    printf("please press enter_key continue!\n");    getchar();    printf("please select 0-4:");    char c = getchar();    switch(c)    {        case '1':              printf("please student'numbers you want to add:");              scanf("%d",&nums);              add(stu,count,nums);      //添加数据              getchar();              break;        case '2':              deleteScreen();              scanf("%d",&temp);              switch(temp)              {                  case 0:                      printf("please input delete name:");                      scanf("%s",names);;                      Delete_name(stu,names);  //删除数据(按姓名删除)                      break;                  case 1:                      printf("please input delete sno:");                      scanf("%d",&snos);                      Delete_sno(stu,snos); //删除数据(按学号删除)                      break;                  case 2:                      break;              }              getchar();              break;        case '3':              menu(stu,count);//查找数据              getchar();              break;        case '4':              printf("please input update sno:");              scanf("%d",&snos);              update(stu,snos,count);     //修改数据              break;        case '0':              exit(0);                    //退出系统        default:              printf("data is illeagel!\n");              getchar();              break;                      //输入非法    } } return 0;}//添加数据void add(struct Student stu[],int pos,int nums)//开始位置、添加人数{    for(int i=pos;isno==Sno)        {            for(int j=i;jname,Name)==0)        {            for(int j=i-flag;j

以上就是关于"怎么用C语言实现学生成绩管理系统"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。

0