考试报名管理(数据结构)

考试报名管理(数据结构)源代码

#include

#include

#include

#include

#define ID struct id

struct id

{

char name[20];

int num;

int age;

char sex[2];

char kind[20];

ID *next;

};

int sum_age=0,max_age=0,min_age=100,pc=0;

float ave_age=0;

ID *creat()

{

ID *p1,*p2,*head;

int pd;

p1=p2=head=NULL;

printf("\t\t\t 开始输入记录!!!\n");

printf("please input pd:\n");

scanf("%d",&pd);

while(pd!=0)

{

p1=(ID*)malloc(sizeof(ID));

printf("请输入学生的准考证号:\n");scanf("%d",&p1->num);

printf("请输入学生的姓名:\n");scanf("%s",p1->name);

printf("请输入学生的年龄:\n");scanf("%d",&p1->age);

sum_age+=p1->age;

if(max_ageage) max_age=p1->age;

if(min_age>p1->age) min_age=p1->age;

printf("请输入学生的性别:\n");scanf("%s",p1->sex);

printf("请输入学生的报考类别:\n");scanf("%s",p1->kind);

if(head==NULL)

{

head=p1;

p2=p1;

}

else

{

p2->next=p1;

p2=p1;

}

printf("please input pd:\n");

scanf("%d",&pd);

pc++;

}

p2->next=NULL;

return(head);

}

ID *insert(ID *head)

{

ID *temp,*p1,*p2;

int pd;

start: p1=head;

printf("插入操作开始!!!\n");

temp=(ID *)malloc(sizeof(ID));

printf("请输入学生的准考证号:\n");scanf("%d",&temp->num);

printf("请输入学生的姓名:\n");scanf("%s",temp->name);

printf("请输入学生的年龄:\n");scanf("%d",&temp->age);

printf("请输入学生的性别:\n");scanf("%s",temp->sex);

printf("请输入学生的报考类别:\n");scanf("%s",temp->kind);

if (head==NULL)

{

head=temp;

temp->next=NULL;

}

else

{

while(p1!=NULL)

{

p2=p1;

p1=p1->next;

}

p2->next=temp;

temp->next=NULL;

}

printf("插入末尾成功");

pc++;

printf("是否继续插入 1.Yes 2.No;\n");

scanf("%d",&pd);

if(pd==1) goto start;

return (head);

}

ID *delet(ID *head)

{

ID *p1,*p2;

int num;

printf("请输入要删除的学生的准考证号:");scanf("%d",&num);

p1=head;

if (head==NULL)

{

printf("没有记录\n");

goto end;

}

while(num!=p1->num && p1!=NULL)

{

p2=p1;p1=p1->next;

}

if(num==p1->num)

{

if (p1==head)

head=p1->next;

else

p2->next=p1->next;

printf("删除成功!!!\n");

pc--;

}

end:return head;

}

ID *search(ID *head)

{

ID *p1,*p2;

int num;

printf("请输入要查找的准考证号:");scanf("%d",&num);

p1=head;

while(num!=p1->num && p1!=NULL)

{

p2=p1;p1=p1->next;

}

if(num==p1->num)

{

printf("学生的准考证号:%d\n",p1->num);

printf("学生的姓名:%s\n",p1->name);

printf("学生的年龄:%d\n",p1->age);

printf("学生的性别:%s\n",p1->sex);

printf("学生的报考类别:%s\n",p1->kind);

}

return head;

}

ID *modify_num(ID *head)

{

ID *p;

int i,m,n,num;

start:

printf("请输入要修改的学生的准考证号:");

scanf("%d",&num);

p=head;

while(p!=NULL )

{

if(num==p->num)

{

m=1;

while(m==1)

{

m=0;

printf("\t\t 1.修改学生的准考证号\n");

printf("\t\t 2.修改学生的姓名\n");

printf("\t\t 3.修改学生的年龄\n");

printf("\t\t 4.修改学生的性别\n");

printf("\t\t 5.修改学生的报考类别\n");

printf("请选择(1--5):");

scanf("%d",&i);

switch( i )

{

case 1 :

printf("请输入修改后的准考证号:");

scanf("%d",&p->num);

break;

case 2:

printf("请输入修改后的姓名:");

scanf("%s",p->name);

break;

case 3:

printf("请输入修改后的年龄:");

scanf("%d",&p->age);

break;

case 4:

printf("请输入修改后的性别:");

scanf("%s",&p->sex);

break;

case 5:

printf("请输入修改后的报考类别:");

scanf("%s",p->kind);

break;

default: printf("输入错误,请重新输入");

}

}

break;

}

p=p->next;

}

printf("是否继续修改其他学生情况(1改 2不改):");

scanf("%d",&n);

if(n==1)goto start;

else return head;

}

void print(ID *head)

{

ID *p;

p=head;

printf("\t\t\t*****************\n");

printf("显示结果是:\n");

if(head!=NULL)

do

{

printf("%10d%10s%10d%10s%10s\n",p->num,p->name,p->age,p->sex,p->kind); p=p->next;

} while(p!=NULL);

}

void main()

{

ID *head;

int choise;

while(1)

{

printf("\t\t 学生考试报名管理系统\n");

printf("\t\t 1.建立文件\n");

printf("\t\t 2.插入数据\n");

printf("\t\t 3.删除数据\n");

printf("\t\t 4.修改记录\n");

printf("\t\t 5.查找记录\n");

printf("\t\t 0.退出\n");

printf("\n");

printf("请选择(0-5):");

scanf("%d",&choise);

switch(choise)

{

case 1: head=creat();

print(head);

break;

case 2: head=insert(head);

print(head);

break;

case 3: head=delet(head);

print(head);

break;

case 4: head=modify_num(head); print(head);

break;

case 5:search(head);

print(head);

break;

case 0:

exit(0);

break;

default :printf("输入错误, 请重新输入!\n"); }

}

}

考试报名管理(数据结构)运行结果

考试报名管理(数据结构)源代码

#include

#include

#include

#include

#define ID struct id

struct id

{

char name[20];

int num;

int age;

char sex[2];

char kind[20];

ID *next;

};

int sum_age=0,max_age=0,min_age=100,pc=0;

float ave_age=0;

ID *creat()

{

ID *p1,*p2,*head;

int pd;

p1=p2=head=NULL;

printf("\t\t\t 开始输入记录!!!\n");

printf("please input pd:\n");

scanf("%d",&pd);

while(pd!=0)

{

p1=(ID*)malloc(sizeof(ID));

printf("请输入学生的准考证号:\n");scanf("%d",&p1->num);

printf("请输入学生的姓名:\n");scanf("%s",p1->name);

printf("请输入学生的年龄:\n");scanf("%d",&p1->age);

sum_age+=p1->age;

if(max_ageage) max_age=p1->age;

if(min_age>p1->age) min_age=p1->age;

printf("请输入学生的性别:\n");scanf("%s",p1->sex);

printf("请输入学生的报考类别:\n");scanf("%s",p1->kind);

if(head==NULL)

{

head=p1;

p2=p1;

}

else

{

p2->next=p1;

p2=p1;

}

printf("please input pd:\n");

scanf("%d",&pd);

pc++;

}

p2->next=NULL;

return(head);

}

ID *insert(ID *head)

{

ID *temp,*p1,*p2;

int pd;

start: p1=head;

printf("插入操作开始!!!\n");

temp=(ID *)malloc(sizeof(ID));

printf("请输入学生的准考证号:\n");scanf("%d",&temp->num);

printf("请输入学生的姓名:\n");scanf("%s",temp->name);

printf("请输入学生的年龄:\n");scanf("%d",&temp->age);

printf("请输入学生的性别:\n");scanf("%s",temp->sex);

printf("请输入学生的报考类别:\n");scanf("%s",temp->kind);

if (head==NULL)

{

head=temp;

temp->next=NULL;

}

else

{

while(p1!=NULL)

{

p2=p1;

p1=p1->next;

}

p2->next=temp;

temp->next=NULL;

}

printf("插入末尾成功");

pc++;

printf("是否继续插入 1.Yes 2.No;\n");

scanf("%d",&pd);

if(pd==1) goto start;

return (head);

}

ID *delet(ID *head)

{

ID *p1,*p2;

int num;

printf("请输入要删除的学生的准考证号:");scanf("%d",&num);

p1=head;

if (head==NULL)

{

printf("没有记录\n");

goto end;

}

while(num!=p1->num && p1!=NULL)

{

p2=p1;p1=p1->next;

}

if(num==p1->num)

{

if (p1==head)

head=p1->next;

else

p2->next=p1->next;

printf("删除成功!!!\n");

pc--;

}

end:return head;

}

ID *search(ID *head)

{

ID *p1,*p2;

int num;

printf("请输入要查找的准考证号:");scanf("%d",&num);

p1=head;

while(num!=p1->num && p1!=NULL)

{

p2=p1;p1=p1->next;

}

if(num==p1->num)

{

printf("学生的准考证号:%d\n",p1->num);

printf("学生的姓名:%s\n",p1->name);

printf("学生的年龄:%d\n",p1->age);

printf("学生的性别:%s\n",p1->sex);

printf("学生的报考类别:%s\n",p1->kind);

}

return head;

}

ID *modify_num(ID *head)

{

ID *p;

int i,m,n,num;

start:

printf("请输入要修改的学生的准考证号:");

scanf("%d",&num);

p=head;

while(p!=NULL )

{

if(num==p->num)

{

m=1;

while(m==1)

{

m=0;

printf("\t\t 1.修改学生的准考证号\n");

printf("\t\t 2.修改学生的姓名\n");

printf("\t\t 3.修改学生的年龄\n");

printf("\t\t 4.修改学生的性别\n");

printf("\t\t 5.修改学生的报考类别\n");

printf("请选择(1--5):");

scanf("%d",&i);

switch( i )

{

case 1 :

printf("请输入修改后的准考证号:");

scanf("%d",&p->num);

break;

case 2:

printf("请输入修改后的姓名:");

scanf("%s",p->name);

break;

case 3:

printf("请输入修改后的年龄:");

scanf("%d",&p->age);

break;

case 4:

printf("请输入修改后的性别:");

scanf("%s",&p->sex);

break;

case 5:

printf("请输入修改后的报考类别:");

scanf("%s",p->kind);

break;

default: printf("输入错误,请重新输入");

}

}

break;

}

p=p->next;

}

printf("是否继续修改其他学生情况(1改 2不改):");

scanf("%d",&n);

if(n==1)goto start;

else return head;

}

void print(ID *head)

{

ID *p;

p=head;

printf("\t\t\t*****************\n");

printf("显示结果是:\n");

if(head!=NULL)

do

{

printf("%10d%10s%10d%10s%10s\n",p->num,p->name,p->age,p->sex,p->kind); p=p->next;

} while(p!=NULL);

}

void main()

{

ID *head;

int choise;

while(1)

{

printf("\t\t 学生考试报名管理系统\n");

printf("\t\t 1.建立文件\n");

printf("\t\t 2.插入数据\n");

printf("\t\t 3.删除数据\n");

printf("\t\t 4.修改记录\n");

printf("\t\t 5.查找记录\n");

printf("\t\t 0.退出\n");

printf("\n");

printf("请选择(0-5):");

scanf("%d",&choise);

switch(choise)

{

case 1: head=creat();

print(head);

break;

case 2: head=insert(head);

print(head);

break;

case 3: head=delet(head);

print(head);

break;

case 4: head=modify_num(head); print(head);

break;

case 5:search(head);

print(head);

break;

case 0:

exit(0);

break;

default :printf("输入错误, 请重新输入!\n"); }

}

}

考试报名管理(数据结构)运行结果


相关文章

  • 人防防护工程师制度流程
  • 恒威公司人防防护工程师执业资格 考试申请规章及流程 南京恒威防护设备有限公司 二零一三年九月 目 录 人防防护工程师执业资格考试考前培训流程 ........................................ 4 一. 明确申 ...查看


  • 2012专升本最新政策1
  • 关于做好2012年普通高等教育专科 升本科考试录取工作的通知 有关高等学校教务处: 根据<山东省教育厅关于做好2012年普通高等教育专科升本科工作的通知>(鲁教高字„2011‟16号,以下简称<通知>)精神,现将我省 ...查看


  • 二级注册建筑师报名程序
  • 深圳2010年一二级注册建筑师考试报名通知 来源:考试大 2010/2/25 [考试大:中国教育考试第一门户] 模拟考场 视频课程 字号:T | T 深圳市关于做好2010年度全国一.二级注册建筑师资格考试工作的通知 各有关单位: 根据全国 ...查看


  • 理财规划师-理财规划师报名条件报名考试时间
  • 理财规划师考试指南 目录 理财规划师考试指南 ................................................................................................. ...查看


  • 安徽省自考报名网站 http
  • 关于高等学校自学考试报考问题的说明 一.网站 安徽省自考报名网站 http://zk.ah163.net/ 安徽省教育招生考试网 http://www.ahzsks.cn/Examination/ 二.考试计划 B020204会计(独立本科 ...查看


  • 华南理工大学
  • 2013年华南理工大学硕士研究生招生 简章 http://www.sina.com.cn 2012年09月19日 17:30 新浪教育微博 华南理工大学(微博)是一所直属教育部,以工见长,理工结合,管.经.文.法等多学科协调发展的研究型全国 ...查看


  • 2014年度宁德市市级机关公开遴选公务员面试形式结构化
  • 中公教育·公务员考试培训首选品牌 2014年度宁德市市级机关公开遴选公务员面试形式结构化 宁德市公务员局网:2014年下半年福建省考专项招聘公告8月31日发布公告,将于9月1-3日进行网络报名, 9月20日笔试,预计10月23-24日面试. ...查看


  • 2010年天津科技大学艺术类专业招生简章
  • 2010年天津科技大学艺术类专业招生简章 一.学校及艺术设计学院简介 天津科技大学始建于1958年(前身为天津轻工业学院),是教育部与天津市共建.以天津市管理为主的公办全日制普通高等院校,是天津市重点建设的以工为主,工.理.文.经.管.法等 ...查看


  • 四六级报名
  • 重庆医科大学2016年6月英语四六级报名时间 来源:考试吧 2016-3-3 16:40:34 [要考试,上考试吧!] 英语四六级万题库 雅思7分飞跃班-新航道cq.xhd.cn 为留学英澳同学量身打造,从基础到高段层层 突破,助你突破雅思 ...查看


  • 土木工程职称考试规划
  • 本科毕业后一年后自动转为助理工程师,评为助理工程师后四年评工程师.如果是搞施工就考建造师做到一定时间后可以考一个监理工程师. 如果搞预结算那就考造价师或经济师. 如果搞设计的话就考结构师或建筑师或岩土师. 最后考一个监理工程师. 当然能者多 ...查看


热门内容