C++基础学生管理系统
本文实例为大家分享了C++基础学生管理系统的实现代码,供大家参考,具体内容如下
适用于c++6.0,codeblocks等常用工具
1.链表处理部分
#include<stdio.h> #include<string.h> #include<stdlib.h> #include"linklist.h" #include"elem.h" voiddispnode(linklisth) { node*p; p=h->next; while(p) { dispelem(p); p=p->next; } } intinputnode(linklisth,Te) { node*p; node*q; p=h; while(p->next&&(p->next->data).id<=e.id) { if((p->next->data).id==e.id) return0; p=p->next; } q=(node*)malloc(sizeof(node)); q->data=e; q->next=p->next; p->next=q; return1; } intdelnode(linklisth,intid) { node*p; p=h; while(p->next&&(p->next->data).id!=id) p=p->next; if(p->next) { node*t=p->next; p->next=t->next; free(t); return1; } else return0; } node*searchname(linklisth,charname[]) { node*p; p=h-next; while(p&&strcmp((p->data).name,name)!=0) p=p->next; returnp; } node*searchid(linklisth,intid) { node*p; p=h->next; while(p->next&&(p->next->data).id<=e.id) p=p->next; returnp; }
2.数据处理部分
#include<stdio.h> #include<string.h> #include<stdlib.h> #include"linklist.h" #include"elem.h" voiddispnode(linklisth) { node*p; p=h->next; while(p) { dispelem(p); p=p->next; } } intinputnode(linklisth,Te) { node*p; node*q; p=h; while(p->next&&(p->next->data).id<=e.id) { if((p->next->data).id==e.id) return0; p=p->next; } q=(node*)malloc(sizeof(node)); q->data=e; q->next=p->next; p->next=q; return1; } intdelnode(linklisth,intid) { node*p; p=h; while(p->next&&(p->next->data).id!=id) p=p->next; if(p->next) { node*t=p->next; p->next=t->next; free(t); return1; } else return0; } node*searchname(linklisth,charname[]) { node*p; p=h-next; while(p&&strcmp((p->data).name,name)!=0) p=p->next; returnp; } node*searchid(linklisth,intid) { node*p; p=h->next; while(p->next&&(p->next->data).id<=e.id) p=p->next; returnp; }
3.文件处理部分
#include<stdio.h> #include<string.h> #include<stdlib.h> #include"linklist.h" #include"elem.h" voiddispnode(linklisth) { node*p; p=h->next; while(p) { dispelem(p); p=p->next; } } intinputnode(linklisth,Te) { node*p; node*q; p=h; while(p->next&&(p->next->data).id<=e.id) { if((p->next->data).id==e.id) return0; p=p->next; } q=(node*)malloc(sizeof(node)); q->data=e; q->next=p->next; p->next=q; return1; } intdelnode(linklisth,intid) { node*p; p=h; while(p->next&&(p->next->data).id!=id) p=p->next; if(p->next) { node*t=p->next; p->next=t->next; free(t); return1; } else return0; } node*searchname(linklisth,charname[]) { node*p; p=h-next; while(p&&strcmp((p->data).name,name)!=0) p=p->next; returnp; } node*searchid(linklisth,intid) { node*p; p=h->next; while(p->next&&(p->next->data).id<=e.id) p=p->next; returnp; }
4.主菜单自定义部分
#include<stdio.h> #include<stdlib.h> #include"linklist.h" #include"elem.h" #include"fileop.h" voidmainmenu(); voidsearchlinklist(linlisth) { linklisth; h=(linklist)malloc(sizeof(node)); h->next=NULL; loadfile(h); mainmenu(h); savefile(h); printf("\n"); return0; } voidmainmenu() { node*p; intid; Te; intselect; intcount=1; do { printf("\n"); printf("----------------¡¶SSMGSOS¡·---------------\n"); printf("1displaying2searching3adding4deleting\n\n"); printf("5changing6extiting\n"); printf("--------------------welcome------------------------\n"); printf("pleaseinputyourselect:"); scanf("%d",&select); switch(select) { case1: dispnode(h); break; case2: searchlinlist(h); break; case3: inputelem(&e); if(inputnode(h,e)) printf("succeed\n"); else printf("failed\n"); break; case4: printf("pleaseinputid:"); scanf("%d",&id); break; case5://功能引用 break; case6://功能引用 count=0; break; } }while(count); }
5.头文件集合部分
elem.h部分
#ifndefLINKLIST_H_INCLUDED #defineLINKLIST_H_INCLUDED #include"elem.h" typedefstructnode { Tdata; structnode*next; }node; typedefnode*linklist; voiddispnode(linklisth); intinputnode(linklisth,Te); intdelnode(linklisth,intid); node*searchname(linklisth,charname[]); node*searchid(linklisth,intid); #endif//LINKLIST_H_INCLUDED fileop.h部分 #ifndefFILEOP_H_INCLUDED #defineFILEOP_H_INCLUDED #include"linklist.h" voidsavefile(linklisth); voidloadfile(linklisth); #endif//FILEOP_H_INCLUDED linklist.h部分 #ifndefLINKLIST_H_INCLUDED #defineLINKLIST_H_INCLUDED #include"elem.h" typedefstructnode { Tdata; structnode*next; }node; typedefnode*linklist; voiddispnode(linklisth); intinputnode(linklisth,Te); intdelnode(linklisth,intid); node*searchname(linklisth,charname[]); node*searchid(linklisth,intid); #endif//LINKLIST_H_INCLUDED
推荐几篇文章:
C++实现简单的图书管理系统
C++实现简单的职工信息管理系统
C++基础学生管理系统
关于管理系统的更多内容请点击《管理系统专题》进行学习
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。