内容发布更新时间 : 2025/2/13 11:23:01星期一 下面是文章的全部内容请认真阅读。
报告题目:学生证管理程序
题目要求
【功能要求】
该程序应该具有下列功能:
(1) 录入某位学生的学生证信息。学生证应该包含的信息参见自己的学生证。 (2) 给定学号,显示某位学生的学生证信息。
(3) 给定某个班级的班号,显示该班所有学生的学生证信息。 (4) 给定某位学生的学号,修改该学生的学生证信息。 (5) 给定某位学生的学号,删除该学生的学生证信息。 (6) 提供一些统计各类信息的功能。
【输入要求】
应用程序运行后,在屏幕上显示一个菜单。用户可以根据需求,选定相应的操作项目。进入某个操作项目后,根据应用程序的提示信息,从键盘输入相应信息。
【输出要求】
(1)应用程序运行后,要在屏幕上显示一个菜单。
(2)要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。
二、需求分析
学生证信息采用文件存储,因而要提供文件的输入/输出操作;要根据给定的学号或班号进行相应的操作,要提供查找操作;显示信息要提供显示操作;修改和删除要提供文件的修改和删除操作;实现一些统计各类信息的功能要提供统计操作;另外,还要提供键盘式选择菜单以实现功能选择。
三、总体设计
整个管理程序被设计为数据输入模块、数据查找模块、数据修改模块、数据删除模块和数据统计模块。如图所示:
学生证管理系统 增加 查找 修改 删除 统计 四、详细设计
1.主函数
主函数一般设计得比较简洁,只提供输入、处理和输出部分的函数调用。其中各功能模
块用菜单方式选择。 【流程图】
开始
显示一系列功能选项
N
输入n,判断n
是否是1~6
Y
根据n的值调用各功能模块函数 结束
【程序】
int main() { int n; Re_file(); //读学生证信息文件 n=1; while(n) { system(\ printf(\ printf(\ printf(\
printf(\┌──────主菜单──────┐\\n\ printf(\││\\n\
printf(\│ 1.录入学生证信息│\\n\ printf(\│ 2.查找学生证信息│\\n\ printf(\│ 3.修改学生证信息│\\n\ printf(\│ 4.删除学生证信息│\\n\ printf(\│ 5.执行统计功能│\\n\ printf(\│ 6.退出│\\n\ printf(\││\\n\ printf(\└───────────────┘\\n\ printf(\请输入您所需相应操作前的数字:\ scanf(\ printf(\
2
switch(n) { case 1:Append();Display1();break; case 2:Query();break; case 3:Modify();Display2();break; case 4:Delete();Display3();break; case 5:Stat();break; case 6:exit(0); }
printf(\ 请按任意键继续!\ getch(); } Wr_file(); //写文件 return 0; }
2.各功能模块设计
(1)数据读入模块 【数据结构】
struct StudentCard //学生证结构体 { char name[10]; int sex; char stuNo[10]; //学号 int classNo; //班号 }StuCard[N];
注意:StuCard[N]中的N为学生人数,程序中采用宏定义的方式,可以随时在源程序宏定义
中修改。本程序中宏定义为:#define N 10。
【程序】
/************************数据读入模块**********************/ void Re_file() { int i; FILE *fp; fp=fopen(\ i=0; while(fscanf(fp,\].classNo)!=EOF) i++; fclose(fp); }
3