易采站长站为您分析C++基础学生管理系统的相关资料,包括了文件处理代码,链表处理代码,以及自定义代码,主函数自定义,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了C++基础学生管理系统的实现代码,供大家参考,具体内容如下
适用于c++6.0,codeblocks等常用工具
1. 链表处理部分
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include"linklist.h"
#include"elem.h"
void dispnode(linklist h)
{
node *p;
p=h->next;
while(p)
{
dispelem(p);
p=p->next;
}
}
int inputnode(linklist h,T e)
{
node *p;
node *q;
p=h;
while(p->next&& (p->next->data).id<=e.id)
{
if((p->next->data).id==e.id)
return 0;
p=p->next;
}
q=(node*)malloc(sizeof(node));
q->data=e;
q->next=p->next;
p->next=q;
return 1;
}
int delnode(linklist h,int id)
{
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);
return 1;
}
else
return 0;
}
node* searchname(linklist h,char name[])
{
node *p;
p=h-next;
while( p && strcmp((p->data).name ,name)!=0)
p=p->next;
return p;
}
node* searchid(linklist h,int id)
{
node *p;
p=h->next;
while( p->next && (p->next->data).id <= e.id )
p=p->next;
return p;
}
2. 数据处理部分
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include"linklist.h"
#include"elem.h"
void dispnode(linklist h)
{
node *p;
p=h->next;
while(p)
{
dispelem(p);
p=p->next;
}
}
int inputnode(linklist h,T e)
{
node *p;
node *q;
p=h;
while(p->next&& (p->next->data).id<=e.id)
{
if((p->next->data).id==e.id)
return 0;
p=p->next;
}
q=(node*)malloc(sizeof(node));
q->data=e;
q->next=p->next;
p->next=q;
return 1;
}
int delnode(linklist h,int id)
{
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);
return 1;
}
else
return 0;
}
node* searchname(linklist h,char name[])
{
node *p;
p=h-next;
while( p && strcmp((p->data).name ,name)!=0)
p=p->next;
return p;
}
node* searchid(linklist h,int id)
{
node *p;
p=h->next;
while( p->next && (p->next->data).id <= e.id )
p=p->next;
return p;
}
3. 文件处理部分










