




已阅读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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 三年级拨河作文500字左右
- 2025-2030中国防守曲棍球头行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国镀锌镍行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国铝合金建材行业发展分析及发展趋势预测报告
- 2025-2030中国钢压延行业市场发展分析及竞争格局与投资前景研究报告
- 2025-2030中国针棉织品市场调研及发展策略研究报告
- 2025-2030中国金属陶瓷行业市场深度调研及发展趋势与投资前景预测研究报告
- 2025-2030中国重组制药厂的小瓶适配器行业市场现状供需分析及投资评估规划分析研究报告
- 2025年特定蛋白分析仪器试剂项目合作计划书
- 2025-2030中国速溶咖啡行业深度调研及投资前景预测研究报告
- 2025年上海嘉定区江桥镇企业服务有限公司招聘笔试参考题库附带答案详解
- 合作合同模板
- 罗明亮小数的意义课件
- 2025中国冶金地质总局总部招聘笔试考点考试题库答案及解析
- 2025高职单招考试(语文)试题(附答案)
- 9.1 日益完善的法律体系课件(共15张)+1视频-2024-2025学年统编版道德与法治七年级下册
- 《苏联发展盛衰史》课件
- 《理工英语1》课程导学PPT课件
- 电梯台账表格(精编版)
- 鼻胆管护理 (2)ppt课件
- 田字格硬笔书法练字专用A4打印版红蓝两色
评论
0/150
提交评论