资源简介
3.班级缴费信息管理系统
实现班级的创建、修改、删除功能,能够对班级中的学生信息进行增、删、改操作,并能够对班级应交学费进行计算(本科生学费为专科生学费的80%,研究生学费为本科生学费的70%)。能够按照班级、学号、姓名等对学生缴费情况进行查询,并按照学生缴费金额的多少进行排序显示。如果全班缴纳学费低于总学费的80%则显示欠费学生信息,能查询所有欠费学生信息,也能按条件查询欠费学生的信息。
代码片段和文件信息
#include
#include
#include
typedef struct node
{
int classs;
char name[20];
int id;
int type;
int money;
struct node *next;
}Node;
void welcome();
void menu();
void menu1();
void menu2();
void menu3();
void menu5();
void save(Node *head);
void qsortmoney(Node *head);//链表排序
void qsortid(Node *head);//链表排序
void print(Node *head);//输出
void printxuhao(Node *head);//输出对应序号,便于操作
int main()
{
int CLASSSIDTYPEMONEYflagiminglingpqcount=0sum=0turecut=0cla[100]={0}x=0;//cla记录操作4班级信息
char NAME[20];
Node *head*pre*current*next;
pre=(Node *)malloc(sizeof(Node));
head=(Node *)malloc(sizeof(Node));
next=(Node *)malloc(sizeof(Node));
head->next=NULL;
pre=head;
welcome();
//读入文件
FILE *fp;
fp=fopen(“123.txt““r“);
//建立链表
while (fscanf(fp“%d %s %d %d %d“&CLASSSNAME&ID&TYPE&MONEY)>0)
{
current=(Node *)malloc(sizeof(Node));
pre->next=current;
current->next=NULL;
current->classs=CLASSS;
strcpy(current->nameNAME);
current->id=ID;
current->type=TYPE;
current->money=MONEY;
pre=current;
cut++;//学生总人数
}
//选择命令
while (1)
{
menu();
scanf(“%d“&flag);
switch (flag)
{
case 1:
menu1();
scanf(“%d“&mingling);
switch (mingling)
{
case 1:
//这是该程序一大败笔,就是无法建立一个不含任何学生的班级
print(head);
printf(“(输入0返回)请输入需要增加的班级的班号“);
scanf(“%d“&CLASSS);
if (q==0)
break;
printf(“输入1表示专科生\n输入2表示本科生\n输入3表示研究生\n“);
printf(“(输入0返回)请输入该班级的类型:“);
scanf(“%d“&TYPE);
printf(“请依次输入一个该班学生的姓名,学号,已缴学费“);
scanf(“%s %d %d“NAME&ID&MONEY);
goto d;
break;
case 2:
printxuhao(head);
printf(“(输入0返回)请输入需要修改的班级序号:“);
scanf(“%d“&q);
if (q==0)
break;
pre=head->next;
for (i=1;i pre=pre->next;
printf(“该班级信息如下\n%-10d %-20s %-10d %-5d %-10d\n“pre->classspre->namepre->idpre->typepre->money);
printf(“输入1修改该班级编号\n输入2修改该班级类型\n输入0返回上一步\n请输入数字:“);
scanf(“%d“&p);
switch (p)
{
case 1:
printf(“请输入正确的班级编号:“);
scanf(“%d“&CLASSS);
current=head->next;
while (current!=NULL)
{
if (current->classs==pre->classs)
current->classs=CLASSS;
current=current->next;
}
break;
case 2:
printf(“输入1表示专科生\n输入2表示本科生\n输入3表示研究生\n“);
printf(“请输入正确的班级类型:“);
scanf(“%d“&TYPE);
current=head->next;
while (current!=NULL)
{
if (current->classs==pre->classs)
current->type=TYPE;
current=current->next;
}
break;
}
save(head);
break;
case 3:
printxuhao(head);
printf(“(输入0返回)请输入需要删除的班级序号:“);
scanf(“%d“&q);
if (q==0)
break;
pre=head;
current=pre->next;
while (current!=NULL)
{
- 上一篇:观察者模式 c++ 实现
- 下一篇:K最短路算法实现(KSP)
相关资源
- 学生信息管理系统c语言单链表实现
- c语言课程设计之网络购物系统
- 20C++MFC课程设计之吹泡泡游戏
- C语言课设成绩管理系统源代码
- 课程设计全国交通咨询模拟系统C++实
- 单项选择标准化考试系统 C语言版
- 学生管理系统,mfc做的,本人课设作
- 数据机构课设--链表
- C语言版的职工管理系统课设
- 数据结构课设 运动会分数统计
- 数据结构课设排序算法的可视化演示
- C++课设MFC实现人员信息管理系统
- C语言图书管理课设报告
- 快递物理系统管理c++课设
- C++课设 简单的投票系统
- 东北大学C语言课设—小金库
- C语言课设---汉诺塔程序代码
- 数字信号处理课设报告 低比特率图像
- 简单的线性反馈移位寄存器LFSRC语言实
- C++航空售票系统
- 哈夫曼编码译码器 C语言 数据结构课
- 广工操作系统课设:多道批处理系统
- 操作系统课设__多道批处理系统两级调
- MFC课设高校教师信息管理系统论文
- 学生信息管理系统,C语言,课设,附
- 基于c/c++实现的宿舍管理系统可做小型
- 微机接口课设 Proteus 8086 汽车控制系统
- 航班信息的查询与检索数据结构课设
- C语言模拟ATM(结构体版)
- 运动会分数统计
评论
共有 条评论