我这里有一份完整的学生信息管理系统源代码,限于知道篇幅,这里先粘贴出定义声明部分代码,以及运行结果截图。
详细内容私信联系~~
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#define status int
#define NAME 30 /*各类名称字数上限*/
#define STU 100 /*学生人数上限*/
#define SUB 10 /*课程数上限*/
#define PASS 60 /*及格分数下限(含)*/
#define LA 85 /*A级别分数下限(含)*/
#define LB 70 /*B级别分数下限(含)*/
#define LC 60 /*C级别分数下限(含)*/
#define LD 0 /*D级别分数下限(含)*/
typedef struct record {
float score; /*成绩分数*/
char level; /*成绩分数段*/
} record;
typedef struct student {
int id; /*id*/
int no; /*学号*/
char name[NAME]; /*姓名*/
record scores[SUB]; /*各门课成绩分数*/
float totalScore; /*总分*/
float averageScore; /*平均分*/
char totalLevel; /*总分数段*/
int ranking; /*名次*/
} student;
char subject[SUB][NAME]; /*课程名称*/
/**********************以下为函数声明**********************/
status initProgram (student stu[], int *stuNum, int *subNum, int mode); /*初始化,含测试、程序写定课程、自定义课程3种模式*/
void initResult (student stu[], int *stuNum, int *subNum, int mode); /*判断初始化结果*/
status inputTestStuInfo (student stu[], int *stuNum, int *subNum); /*测试数据*/
status defSubject (int *subNum, char subject[SUB][NAME]); /*自定义各门课程*/
int stuInfoEmpty (student stu[], int stuNum); /*学生信息判空*/
status stuInfoEmptyOp (student stu[], int stuNum); /*学生为空时的处理*/
int noRepeated (student stu[], int stuNum, int no); /*学号判重*/
status printInputStuInfoheader (int subNum); /*输出录入学生信息之表头*/
status inputStuInfo (student stu[], int *stuNum, int subNum, int stuIndex, int ismod); /*录入单个学生信息*/
status inputAllStuInfo (student stu[], int *stuNum, int subNum); /*录入全部学生信息*/
char getScoreLevel (float score); /*计算分数段*/
status calcStuInfo (student stu[], int stuIndex, int subNum); /*计算处理单个学生信息*/
status calcAllStuInfo (student stu[], int stuNum, int subNum); /*计算处理全部学生信息*/
status printStuInfoheader (int subNum, int inclRanking); /*输出学生信息之表头*/
status printStuInfo (student stu[], int stuIndex, int subNum, int inclRanking); /*输出单个学生信息*/
status printAllStuInfo (student stu[], int stuNum, int subNum, int inclRanking); /*输出全部学生信息*/
int compareStuInfo (student stu[], int stuNum, int rsIndex[], int inclNo, int no, int inclName, char name[]); /*按学号、姓名查找学生信息,返回结果个数*/
status findStuInfo (student stu[], int stuNum, int subNum); /*查找符合条件的学生信息并输出*/
status deleteStuInfoByIndex (student stu[], int *stuNum, int subNum, int stuIndex); /*删除指定位置的学生信息*/
status delStuInfo (student stu[], int *stuNum, int subNum); /*删除学生信息*/
status modifyStuInfoByIndex (student stu[], int *stuNum, int subNum, int stuIndex); /*修改指定位置的学生信息*/
status modStuInfo (student stu[], int *stuNum, int subNum); /*修改学生信息*/
status descSortAndRanking (student stu[], int stuNum, int subNum); /*按总分降序排列并录入名次*/
status printStatistics (student stu[], int stuNum, int subNum); /*输出统计数据*/
int getCommand (void); /*输入命令编号*/
status printMenuText (void); /*打印菜单文本*/
status runMeun (student stu[], int *stuNum, int subNum); /*运行菜单*/
status pressAnykeyToContinue (void); /*按任意键继续*/
/**********************以上为函数声明**********************/
主界面
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/f7246b600c338744386077925b0fd9f9d62aa0b3?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
输入学生信息
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/f2deb48f8c5494eeebb355f727f5e0fe98257e4e?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
输入学生信息-失败
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/d000baa1cd11728b0c6ec8ccc2fcc3cec2fd2c98?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
输出学生信息
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/d31b0ef41bd5ad6e80073e048bcb39dbb7fd3c65?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
查找学生信息
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/a08b87d6277f9e2f9a0758e61530e924b899f32a?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/96dda144ad345982475cbf7c06f431adcaef840e?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
删除学生信息
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/4d086e061d950a7ba5200b2a00d162d9f3d3c9c3?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
修改学生信息
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/0ff41bd5ad6eddc40cd2f11533dbb6fd52663322?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
修改学生信息-成功
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/5bafa40f4bfbfbedd244739172f0f736afc31f3a?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
按成绩降序排列并输出名次
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/c83d70cf3bc79f3dbe4ca0deb0a1cd11738b29aa?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
输出统计数据
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/b3119313b07eca8089517d099b2397dda044838c?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)