




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学生信息管理系统程序设计k软件开发目的该软件主要是实现对学生基本信息进行系统化的管理,首先可以对学生基本信息 进行录入和存取,其次可以浏览学生的相关信息,然后可以删除和插入学生的相 关信息,还有就是可按学号或按学生查询此学生的相关信息。由此来系统化管理 学生基本信息,并达到简易操作的目的。2、功能分析说明图3. 各项功能说明(1)学生基本信息的录入和保存:在链表中的适当位置插入一个学生信息节点,一次添加一条学生信息(添加容包 含学号.、年龄),如果添加的学号已经在文件中存在,则不能添加到文件中去, 应显示错误提示语;如果添加成功,则显示成功提示语。添加操作完毕后,应该 询问用户是否继续执行此操
2、作。如果用户不继续,则退回到程序初始界面。(2)显示学生信息:此功能是显示一个学生信息节点中的信息,并在屏幕上显示出来。(3)删除学生信息:进入该项功能界面后,删除学生信息,一次删除一条学生信息。(4)按学号查找学生信息:按学号查询学生信息,要求显示文件中与用户输入的学号相匹配的学生信 息,要求显示学号、.年龄等字段,如果文件中没有学生信息,则显示提示语。 查询操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回 到程序初始界面。(5)按查找学生信息:按查询学生信息,要求显示文件中与用户输入的学号相匹配的学生信息, 要求显示学号.年龄等字段,如果文件中没有学生信息,则显示提示语。
3、查询 操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程 序初始界面。(6)修改学生信息修改学生信息中的某一项信息,一次更新一条学生信息(更新容包含学号、年 龄等字段值),如果更新的学号在文件中不存在,则不能更新,应该显示错误提 示语;如果更新成功,则显示成功提示语。更新操作完毕后,应该询问用户是否 继续执行此操作。如果用户不继续,则退回到程序初始界面。(7)退出系统,结束任务。4、软件功能的验收标准1. 有较为美观简洁大方的菜单,能保证用户方便、直观、快捷的熟悉并使用软 件的各项功能。2. 有严密正确的数据验证功能和数据处理功能,能够查询、插入、修改和删除 学生信息。3.
4、 系逼有一定的可靠性o问题补充: 不方便贴岀来,发到我也可! slrll30163.最佳答案#include #include #include #ineludeio. hdefine NULL 0#define LEN sizeof(struct student)define FILE DATA_PATH c:student.txtstruct studentlong int num;char name20 j:int age;char sex4:char birthday!10.;char address30.:long int tele num;char Email20;struct s
5、tudent *next;;int TOTAL_NUM = 0;struct student *head = NULL;void welcome ():void mainmenu ();void record ();void insert (struct student *stu):void display (struct student *stu):void displayAll();void query ();void query_by num():void query_by name():void readDataO :void wr it eData ():void freeAll (
6、);void del ();void change ():void devise(struct student *p):int main ()char userName9:char userIDWD71:int i;welcome ();for(i = 0; i 3; i+)printf (,rn管理员初始用户名和密码均为adminn);printf (,r请输入您的用户名:”);scanf (,r%s, userName);printf (An请输入您的密码:”);scanf(%s, userPWD);if (strcmp(userName,,radmin11 )=0) &(strcmp(u
7、serPWD,admin)=0)/用户名和密码正确,显示主菜单mainmenu ();break;elseif (i num);printf (w请输入学生的:);scanf (,r%s, pO-name);printf (,r请输入学生的年龄:); scanf (r%d, &p0age);printfC1请输入学生的性别:);scanf (,r%s, pOsex);printf (“请输入学生的出生年月:”); scanf(%s,pO-birthday); printf (,r请输入学生的地址:);scanf (,r%s11, pOaddress);printf (,f请输入学生的:);sc
8、anf(%ld,&p0-tele num);printf (,r请输入学生的 E-mail: M);scanf (,r%s,pOE_mail):insert(pO);printf (,r该学生的信息为:n);printf (*“);printf (*学号tt年龄t性别t出生年月tt地址ttE-mailn); display (pO);void insert (struct student *stu) struct student *p0, *pl, *p2;pl = head;pO = stu;if(head = NULL)head = pO;pO-next = NULL;elsewhile(
9、pOnum pl-num)&(pl-next != NULL) p2 = pl;pl = pl-next;if (pO-num next = pO;pO-next = NULL;TOTAL_NUM+;void display(struct student *p)printf(%ldt%st%dt%st%st%st%ldt%sn, p-num, p-name, p-age, p-sex, p-birthday, p-address, p-tele_num, p-E mail); /浏览学生信息void displayAll()struct student *p;printfC1 学生总数:%dn
10、, TOTAL_NUM);p = head;if(head != NULL)printf (,rn学号tt年龄t性别t出生年月t地址ttEmailnM);printf (*w);dodisplay (p);p = p-next;while(p != NULL):printf (An1);/查询学生信息void query ()int choice;choice = -1;doprintf (An1);printf (,f +n);printf (w |按学号查询 请按1 |nK);printf (,r | 按查询 请按 2 |nw);printf (,r | 取消请按 0 |n);+n,r);
11、printf (,r + printf (,f请输入您的选择:);scanf (r%d&choice):switch(choice)case 0:return;case 1:query by num ();break;case 2:query by name ();break;default:printf (An 无效选项! ”);break;while (choice != 0);/按学号查询学生信息void query by_num() int num;struct student *pl ;printf(,r请输入学生的学号:”);scanf(”1d, &num);if(head=NUL
12、L)printf(无学生记录! ntt);return;pl=head;whi1e(num!=p1-num & pl-next!二NULL)pl二pl-next;if(num = plnum)printf (,rn学号tt年龄t性别t出生年月t地址ttE-mailnH);printf (,f);display (pl);elseprintf(没有该学生记录,请核对!);按查询学生信息void queryby name() char name20:struct student *pl ;printf (w请输入学生的:);scanf(”s, name):if(head=NULL)printf(无
13、学生记录! nw);return;pl=head;while(strcmp(name, pl-name) & pl-next!二NULL)pl二pl-next;if(!strcmp(name, plname)printf (An学号tt年龄t性别t出生年月t地址ttE-mailn);printf (*w);display(pl);elseprintf(,r没有该学生记录,请核对!);写入文件void writeDataOFILE* fp;/文件指针struct student *p;fp = fopen(FILE_ DATA PATH, wB);if (!fp)printf(,f文件打开错误!
14、 ”);return;fprintf(fp,w%dnw, T0TAL_NUM);for(p = head; p!= NULL; p= p-next)fprintf(fp,%ldt%st%dt%st%st%st%ldt%sn,p-num, p-name, p-age, p-sex, p-birthday, p-address,p-tele num, p-E_mail):) fclose(fp);void freeAll ()struct student *pl, *p2;pl=p2=head;while(pl)p2=pl-next;free (pl);pl=p2;读取文件void readDat
15、aOFILE* fp;/文件指针struct student *pl, *p2;fp = fopen(FILE_DATA PATH,if (!fp)printf(,F文件打开错误! ”);return 0;fscanf (fpt ,r%dn,r. &TOTAL_NUM);head = pl = p2 = (struct student *)malloc(LEN):fscanf (fp, ,%ldt%st%dt%st%st%st%ldt%snr,&pl-nuni, pl-name, &pl-age, pl-sex, p 1-birthday,pl-address, &pl-tele num, p
16、l-E_mail);while(!feof(fp)pl = (struct student *)malloc(LEN):fscanf (fp, ,%ldt%st%dt%st%st%st%ldt%snr,&pl-numt pl-namet &pl-age, pl-sex, pl-birthday, pl-address, &pl-tele num, pl-E_mail);p2-next = pl;p2 = pl;p2-next = NULL;fclose(fp);/删除学生信息void del ()struct student *plt *p2;long int num;if(head = NU
17、LL)printf(w无学生记录! ntt);return;printf(w请输入您要删除的学生的学号:);scanf(w%ld, &num);pl = head;while (num != pl-num & pl-next != NULL)p2 = pl;pl = pl-next;if (num = plnum)if (pl = head)head = pl-next;else p2-next = pl-next;free (pl);TOTAL_NUM;elseprintf (w没有该学生记录,请核对! n);/修改学生信息void change ()struct student *pl,
18、*p2;long int num;if(head = NULL)printf(w无学生记录! ntt);return;printfC1请输入您要修改的学生的学号:);scanf(%ld, &num):pl = head;while (num != pl-num & pl-next != NULL)p2 = pl;pl = pl-next;if (num = pl-num)devise(pl);elseprintf(,r没有该学生记录,请核对! n);void devise (struct student *p)int choice;choice = -1;do页脚printf(,r请选择您要修改的学生的信息容:十):printf ( +printf (I请按 1 |nw);printf (,r | 年龄 请按 2 |nw);请按 3 |nw);请按 4 |nw);请按 5 |nff);请按6 |十);请按 7
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 纤支镜检查的护理
- 1岁以下婴儿培训课件
- 房地产项目合作开发合同书
- 语文课外阅读特色课程
- 乐器电商课程介绍
- 规范楷书系统课件
- 德法形策课程介绍
- 河北石油职业技术大学《生物医学工程整合课程》2023-2024学年第二学期期末试卷
- 人教版数学六年级下册第二单元《百分数(二)》同步练习含答案
- 遂宁能源职业学院《插画创作》2023-2024学年第二学期期末试卷
- 挖掘机维护保养记录
- 化学实验论文范文(6篇)
- 装修公司入职劳动合同
- (完整版)施工单位工程竣工报告
- 国家开放大学混凝土结构设计原理形考1-4参考答案
- 赣美版八年级美术下册《产品包装设计》教案及教学反思
- LOFT地下车库设计分析
- 对集成电路工程伦理问题的探讨
- 广告设计、制作、安装及售后服务方案
- SMM英国建筑工程标准计量规则中文 全套
- GB/T 9263-2020防滑涂料防滑性的测定
评论
0/150
提交评论