已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
头文件Stud_mgr_system.h内容如下:#ifndef STUD_MGR_SYSTEM_H#define STUD_MGR_SYSTEM_H#include#include#include#includestruct stud_mgr_sysint num;char name8;char phone12;char addr12;struct stud_mgr_sys *front;struct stud_mgr_sys *back;typedef struct stud_mgr_sys student;typedef student *DoubleLink;void printlist(DoubleLink L);DoubleLink addnode(DoubleLink L);DoubleLink deletenode(DoubleLink L);DoubleLink findinfo(DoubleLink L, int num);DoubleLink modifyinfo(DoubleLink L);DoubleLink creatdoublelink();void menu();void secrecy();DoubleLink read_file(DoubleLink L);void save_file(DoubleLink L);#endif源文件opt_sys_api.c内容如下:#includestud_mgr_system.hvoid print_err(char *p)perror(p);exit(1); void printlist(DoubleLink L) DoubleLink tmp; tmp = L;printf(n*n);while(tmp != NULL)printf(tThe student number: %dn, tmp-num);printf(tThe student name: %sn, tmp-name);printf(tThe student phone: %sn, tmp-phone);printf(tThe student addr: %sn, tmp-addr);printf(n);tmp=tmp-front;printf(n*n);getchar(); DoubleLink creatdoublelink()DoubleLink head;DoubleLink new_node, before;int count, i;head = (DoubleLink)malloc(sizeof(student);if(!head)print_err(Fail to malloc head);head-front = NULL;before = head-front;printf(Input number you want to create =);scanf(%d, &count);for(i = 1; i , i);scanf(%d, &new_node-num);printf(%d, The Name =, i);scanf(%s, new_node-name);printf(%d, The Phone =, i);scanf(%s, new_node-phone);printf(%d, The Addr =, i);scanf(%s, new_node-addr);printf(n);new_node-front = NULL;if(head-front = NULL)head-front = new_node;before = head-front;before-back = head;elsebefore-front = new_node;new_node-back = before;before = new_node;printf(Success to createnn);getchar();system(clear);return head-front;DoubleLink addnode(DoubleLink L)DoubleLink addnew, end;end = L;addnew = (DoubleLink)malloc(sizeof(student);if(!addnew)print_err(Fail to malloc addnew);printf(Insert num =);scanf(%d, &addnew-num);printf(Insert name =);scanf(%s, addnew-name);printf(Insert phone =);scanf(%s, addnew-phone);printf(Insert addr =);scanf(%s, addnew-addr);addnew-front = NULL;if(L = NULL)L = addnew;elsewhile(end-front != NULL)end = end-front;end-front = addnew;addnew-back = end;printf(nnInsert OKnn);return L;DoubleLink deletenode(DoubleLink L)DoubleLink ptr, tail;tail = L;while(tail-front != NULL)tail = tail-front;int delnum;printf(Please input student number you want delete =);scanf(%d, &delnum);if(findinfo(L, delnum) = NULL)printf(nNo Information n);exit(1);printf(n=The information you delete=nn);ptr = findinfo(L, delnum);printf(n=nn);printf(ttDelete Oknn);getchar();if(ptr = L)return L-front;else if(tail = ptr)tail-back-front = NULL;elseptr-back-front = ptr-front;ptr-front-back = ptr-back;return L;DoubleLink findinfo(DoubleLink L, int findnum)int i = 1;DoubleLink ptr;ptr = L;if(L = NULL)printf(No informationn);exit(1);while(ptr != NULL)if(ptr-num = findnum)printf(nAt: %d nn, i);printf(n=nn);printf(tThe student number: %dn, ptr-num);printf(tThe student name: %sn, ptr-name);printf(tThe student phone: %sn, ptr-phone);printf(tThe student addr: %sn, ptr-addr);printf(nn=nn);getchar();return ptr;elseptr = ptr-front;i+;return ptr;DoubleLink modifyinfo(DoubleLink L)DoubleLink modptr;int modnum;printf(Please input student number you want modify =);scanf(%d, &modnum);modptr = findinfo(L, modnum);if(modptr = NULL)printf(nnCan not find informationnn);else printf(Input New Number =); scanf(%d, &modptr-num); printf(Input New Name =); scanf(%s, modptr-name); printf(Input New Phone =); scanf(%s, modptr-phone); printf(Input New Addr =); scanf(%s, modptr-addr);printf(nnSuccess to Modifynn);return L;void menu()printf(nn);printf(t=Student INFO System=nn);printf(t* MENU *n);printf(t* * *n);printf(t* 1.Create * 2.Display *n);printf(t* 3.search * 4.Add *n);printf(t* 5.Delete * 6.Modify *n);printf(t* 7.Exit * *n);printf(t* * *n);printf(t*n);void secrecy()char initsec10 = 123456;char inputsec10;int i, j = 0;printf(nInput:);for(i = 3; i = 1; -i)scanf(%s, &inputsec);if(strcmp(initsec, inputsec) != 0)printf(nnYou have only %d timesn, i - 1);+j;getchar();system(clear);elsebreak;if(j = 3)printf(n);getchar();exit(1);system(clear);getchar();Main函数的内容如下:#includestud_mgr_system.hint main(void)char opt;DoubleLink head = NULL;DoubleLink findnode = NULL;int findnum;secrecy();while(1)menu();printf(n);printf(tEnter Your Choice: bb);scanf(%c, &opt);if(opt = n | opt = 0)printf(ttt);printf(nnnCan not enter space keynn);else if(opt 8 | opt );scanf(%d, &findnum);findnode = findinfo(head, findnum);if(!findnode)printf(nnCan not find!n);getchar();system(clear);break;case 4:system(clear);head = addnode(head);printf(n=After add information=nn);printlist(head);printf(n=nn);getchar();system(clear);break;case 5:system(clear);if(head = NULL)printf(Head is empty.no informationnn);break;head = deletenode
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年注册安全工程师案例分析真题及参考答案
- Unit 1 Unit Review2024-2025学年八年级下册英语同步教学设计(冀教版)
- 4.家庭生活自动化、智能化教学设计-2025-2026学年初中物理教科版九年级下册-教科版2012
- 班级年终工作总结
- 保洁专项培训内容
- 比赛训练法汇报
- 新型异山梨醇浓缩设备-洞察与解读
- 保利物业年度汇报
- 肠息肉的护理查房
- 仓库主管试用期工作总结
- 智慧树知到《大话机器人(青海大学)》2025章节测试附答案
- 消防设施施工安全保障措施
- 《康复评定技术》课件-第十七章 常见神经疾病的评定技术
- 华为客户接待流程
- 多缸高能液压圆锥破碎机安全操作规程
- 药品检验员题库(附答案)
- 2023-2024学年山西省太原市高二上学期期中考试地理试卷(解析版)
- 大学生心理健康与发展知到智慧树章节测试课后答案2024年秋华东师范大学
- 江苏省苏州市2024-2025学年高二上学期11月期中考试地理试题(解析版)
- 聘任监理合同范例
- 工伤事故分析报告范文
评论
0/150
提交评论