1
学生证管理系统
1•题目与要求
该系统应该具有下列功能:
1)录入某位学生的学生证信息。
2)给定学号,显示某位学生的学生证信息。
3)给定某个班级的班号,显示该班所有学生的学生证信息。
4)给定某位学生的学号,修改该学生1
学生证管理系统
1•题目与要求
该系统应该具有下列功能:
1)录入某位学生的学生证信息。
2)给定学号,显示某位学生的学生证信息。
3)给定某个班级的班号,显示该班所有学生的学生证信息。
4)给定某位学生的学号,修改该学生的学生证信息。
5)给定某位学生的学号,删除该学生的学生证信息。
6)提供一些统计各类信息的功能。
【输入要求】
应用程序运行后,在屏幕上显示一个菜单。用户可以根据需求,选定相应的操作项目。进入每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。
【输出要求】
1)应用程序运行后,要在屏幕上显示一个菜单。
2)要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。
:
根据题目要求,由于要设计学生证的管理系统,所以学生证信息中应该包含学号、姓名、性别、班号等信息。除此之外,还要做到先录入,再输出,即如果使用者还没有录入任何学生证信息就不能做任何输出。由于学生信息要不断更改,所以还要设定修改、增加、删除、查找功能。另外,学生数量多而繁,故应设置不同类别的统计功能,供使用者方便使用。
综上所述,可将该程序分为:主函数、菜单显示模块、菜单提示模块、学生证信息生成模块、添加学生证信息模块、学生证信息显示模块、学生证信息修改模块、学生证信息删除模块、计算所有学生人数模块、计算各班人数模块。
:
1)主函数
主函数一般设计比较简洁,只提供输入、处理和输出部分的函数调用。其中各功能模块用菜单方式选择。其流程图如下图所示:
voidDlispl日jj卜I巳nLiO/*显不菜单函数衣丿
prlntFCB\n\nXnXn\nXt:Xt
欢迎进入甞注证管理系统T;
printFC'XnXtXtprintF(i8\n\tXtprlntFC"XnXt\tprlntFC"\n\t\tprintFC'XnXtXtprintFC'XnXtXtprintFC88\n\t\tprlntFC"XnXt\tpr-intFCSi\n\t\fcprintFf'XnXtXt
2
3
&
5
頁逋韓学至的学生证信息“〉;
卩广5七1=「・\仃\仃片仃%仃%仃%仃%1:芯口肓您迭择以上数字:");
2
malnC)“主函數斗
return0;
【程序】
structstudent«head;
intmemiu;
&isplayMenuC):
sicanf(44ldiB9ftmenu):
Luhile([nEinu)>
<sikditchfmeruJ
<
case-1:head-createo^toireak;生证乘人怏拷"
case2:head-ddd(head);brealk;证佶息疥力口模块矽
24
caseS;print(>iibre^k;■/■显示悽块caseit-prlnt(head,1>;fcireak;"並丞扰块斗caseS:、;匕厂0日!<,■/■•显玦*■■/
casezmod1Fy(head>E>reah:傕咬*堇j:夬*/
case7;he«ad=del(head);break;才于励]除槿坝
caseS:count_studbnt(Ihead};break:/膽言禿勺十;去块忖Ficacn-®udlssnt=_num()~hvoAk;才■■总、藪骁i+穫块
DisplayMenu();scanF("'竜皿・”补Suenu):
2)各功能模块设计
structstudent
<
unsignedlonynum;charname[4^0];
charsex;
intclass;structstudent*next;
2•输入模块
从主函数送进来的n=1,进入structcreate,在structcreate中通过链表开辟一个长度为student结构体的连续动态空间。接着在此函数中通过*pl这个指针调用voidtips_create(structstudent*p)函数来提示用户录入学生证各项信息。录入完毕后*p1再从voidtips_create(structstudent*p)函数中跳回structcreate中,将其值赋给*p2,这样保存*p2到开辟的内存单元中即可。具体流程图如下图所示:
【程序】
structstudent*CFutr(uoid)丿
学生证管理系统—C语言课程设计 来自淘豆网m.daumloan.com转载请标明出处.