C数据结构:基于链表的教室管理系统

这是一个使用C语言编写的基于链表的教室管理系统,作为一次作业设计,该系统包含基础功能。随着冬季的到来,作者希望通过编程来保持键盘活跃。
摘要由CSDN通过智能技术生成

基于链表的教室管理系统

一次c语言作业设计,有一些它应该有的基本功能:-)
冬天到了,不多陪陪键盘的话大概它也会冬眠的吧


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

//教室结点
typedef struct CLS
{
   
	char *arrNum[10];//编号 
	char *arrCLSName[10];//校区 
	int iCLSNum;//座位数 
	struct _CLS*pNext; //指针域 
 }CLSNODE;
 
 //声明链表的头和尾
CLSNODE* g_pHead=NULL;//g=global全局变量链表头 
CLSNODE* g_pEnd=NULL;

//添加一个学生信息
void AddClsMSG(char arrNum[10],char arrCLSName[10],int iCLSNum) ; 

//链表头添加一个节点 
void AddClsMSGToLinkHead(char arrNum[10],char arrCLSName[10],int iCLSNum) ; 

//清空链表
void FreeLinkData() ; 

//打印信息
void ShowData() ; 

//显示指令
void ShowOrder() ; 

//查找指定编号教室 
CLSNODE* FindByNum(char* arrNum) ; 
 
 //指定位置插入节点
void InsertNode(CLSNODE* pTemp,char *arrNum,char *arrCLSName,int iCLSNum) ;
 
//删除指定位置教室信息
void DeleteCLSNode(CLSNODE* pTemp) ; 
 
int main(void)
{
   
	int iOrder = -1;//初始化 
	char arrNum[10]={
   0};
	char arrCLSName[10]={
   0};
	int iCLSNum=-1;
	CLSNODE* pTemp = NULL;
	
	int nFlag=1;
	 
	printf("****************基于链表的教室管理系统****************\n");
	printf("******            本程序操作功能如下            ******\n");
	printf("******     1编号、座位数、校区的存储(尾添加)    ******\n");
	printf("******     2编号、座位数、校区的存储(头添加)    ******\n");
	printf("******         3在指定位置存储(中间添加)        ******\n");
	printf("******            4删除指定教室信息             ******\n");
	printf("******            5修改指定教室信息             ******\n");
	printf("****************6显示当前所有教室信息*****************\n");

	
	while(nFlag)
	{
   
		printf("#{7}查看菜单或{0}退出程序~\n"); 
		printf("  请输入指令:");
		scanf("%d",&iOrder);
		printf("\n"); 
		switch(iOrder
学生包含以下信息项:学号、姓名、学院、班级、高数成绩、英语成绩、C语言成绩、总分、平均分。 系统的主要功能包括: 1. 创建学生成绩信息文件,根据提示输入学生的各项信息,计算出总分和平均分,然后按学号对学生信息进行排序,并将排序后的学生成绩信息存储到一个二进制文件中。 2. 增加学生信息,在原有学生信息文件的基础上增加新的学生成绩信息,要求:增加后的学生信息仍按学号排序,并继续保存至原文件。 3. 删除学生信息,提示用户输入要进行删除操作的学号,如果在文件中有该信息存在,则将该学号所对应的学生信息删除,否则输出提示信息,并提示用户选择是否继续进行删除操作。 4. 修改学生信息,提示用户输入要进行修改操作的学号,如果在文件中有该息存在,则将提示用户输入该学号对应的要修改的选项,结果保存至原文件,并提示用户选择是否继续进行修改操作。 5. 按不同条件对学生信息进行查询操作,输出满足条件的学生信息。 (1) 按学号查询,输入一个学号,输出对应的学生信息。 (2) 按姓名查询,包括精确查询(输入全名),模糊查询(输入姓)。 (3) 按学院查询,输入学院名称,输出该学院的全部学生的信息。 (4) 按班级查询,输入班级名称,输出该班级的全部学生的信息。 6. 按不同条件对学生成绩进行统计工作。 (1) 按总分对学生信息进行排序(由高到低),输出排序后的信息,并将排序后的学生信息存放到一个新的二进制文件中。 (2) 按平均分统计各个分数段的学生人数(不及格,60-69,70-79,80-89,90-100)。 (3) 分别找出3门课程成绩最高的学生,并输出他们的信息。 (4) 分别统计出3门课程的不及格率,并输出。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值