c语言简单的管理系统,简单的学生信息管理系统(C语言)

《简单的学生信息管理系统(C语言)》由会员分享,可在线阅读,更多相关《简单的学生信息管理系统(C语言)(4页珍藏版)》请在人人文库网上搜索。

1、include#include /输入函数getch的头文件,不能用getchar,具体请查看两者的区别#include /申请空间的函数malloc的头文件typedef struct /定义结构体类型,包含四项内容,可以自由添加int num;char name10;int age;char sex5;st;typedef struct node /构造结点 (也是结构体变量)st data; /数据域struct node *next; /指针域(指向结构体,也就是自身)list; list *create() /建立一个单链表list *p,*r,*head; /定义结构体指针变量in。

2、t i,n;head = (list *)malloc(sizeof(list); /申请头结点r = head;head-next = NULL; /头结点的指针域先定义为空printf(请输入学生人数:n);scanf(%d,&n);printf(请输入学生个人信息:nn学号,姓名,年龄,性别n);for(i=1;idata.num,&p-data.name,&p-data.age,&p-data.sex); /向结点的数据域输入学生信息p-next = NULL;r-next = p; /将头结点指向第一个结点,以此类推。r = r-next;return (head); /返回头结点的。

3、地址void output(list *h) / 输出链表中的学生信息list *p;p = h-next; /使p指向第一个结点if(p = NULL) printf(-学生信息为空-nn);while(p!=NULL)printf(学号,姓名,年龄,性别分别是:n);printf(%d,%s,%d,%sn,p-data.num,p-data.name,p-data.age,p-data.sex);p = p-next;void research(list *h) /查找链表中某一位学生信息list *p; int k;p = h-next; /使p指向第一个结点printf(请输入要查找学。

4、生的学号:n);scanf(%d,&k);while(p & p-data.num!=k)p = p-next; /找到学号为k的结点,如果没有,则p为空if(p)printf(学号,姓名,年龄,性别为:n);printf(%d,%s,%d,%sn,p-data.num,p-data.name,p-data.age,p-data.sex);elseprintf(找不到此学生:n);void insert(list *h) / 插入一个学生信息到链表中 (插到链表末尾)list *p,*q,*r;p = h-next;r = h;q = (list *)malloc(sizeof(list); 。

5、/申请一个新结点printf(请输入插入学生的学号,姓名,年龄,性别:n);scanf(%d%s%d%s,&q-data.num,&q-data.name,&q-data.age,&q-data.sex);q-next = NULL;while(p!=NULL)r = p;p = p-next;r-next = q;void dele(list *h) / 在链表中删除某一位学生信息int k;list *p,*r;r = h;p = h-next;printf(请输入要删除学生的学号:n);scanf(%d,&k);while(p & p-data.num!=k)r = p; /找到学号为k。

6、的结点,如果没有,则p为空p = p-next;if(p)r-next = p-next;p-next = NULL;free(p);printf(学生信息已删除!nn);elseprintf(找不到此学生nn);int main()int i,j=1;list *p;char c = 13; /13是回车键的ASCII值printf(-n);printf( 学生信息管理系统 n);printf(-n);while(c=13)printf( 1,登记学生信息n);printf( 2,浏览学生信息n);printf( 3,查找学生信息n);printf( 4,插入学生信息n);printf( 5,删除学生信息n);printf(-n);printf(请输入你的选择:n);scanf(%d,&i);switch(i)case 1: p = create();break; /调用各函数,实现功能case 2: output(p);break;case 3: research(p);break;case 4: insert(p);break;case 5: dele(p); break;printf(-继续请敲回车!-n);c = getch();return 0;请浏览后下载,资料供参考,期待您的好评与关注。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值