收藏 分销(赏)

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

上传人:w****g 文档编号:4059466 上传时间:2024-07-26 格式:DOC 页数:4 大小:18.04KB 下载积分:5 金币
下载 相关 举报
简单的学生信息管理系统(C语言).doc_第1页
第1页 / 共4页
简单的学生信息管理系统(C语言).doc_第2页
第2页 / 共4页


点击查看更多>>
资源描述
#include<stdio.h> #include〈conio。h〉 //输入函数getch的头文件,不能用getchar,具体请查看两者的区别 #include<stdlib.h> //申请空间的函数malloc的头文件 typedef struct { //定义结构体类型,包含四项内容,可以自由添加 int num; char name[10]; int age; char sex[5]; }st; typedef struct node //构造结点 (也是结构体变量) { st data; //数据域 struct node *next; //指针域(指向结构体,也就是自身) }list; list *create() //建立一个单链表 { list *p,*r,*head; //定义结构体指针变量 int i,n; head = (list *)malloc(sizeof(list)); //申请头结点 r = head; head—>next = NULL; //头结点的指针域先定义为空 printf("请输入学生人数:\n"); scanf("%d",&n); printf("请输入学生个人信息:\n\n学号,姓名,年龄,性别\n"); for(i=1;i〈=n;i++) { p = (list *)malloc(sizeof(list)); //申请一个结点 scanf("%d%s%d%s",&p->data.num,&p—>data.name,&p—〉data。age,&p->data。sex); //向结点的数据域输入学生信息 p—〉next = NULL; r-〉next = p; //将头结点指向第一个结点,以此类推。 r = r->next; } return (head); //返回头结点的地址 } void output(list *h) // 输出链表中的学生信息 { list *p; p = h—>next; //使p指向第一个结点 if(p == NULL) printf("—-—-—--——-——学生信息为空-—------—--——-——--\n\n"); while(p!=NULL) { printf(”学号,姓名,年龄,性别分别是:\n"); printf("%d,%s,%d,%s\n”,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("请输入要查找学生的学号:\n”); scanf("%d”,&k); while(p && p-〉data.num!=k) p = p—〉next; //找到学号为k的结点,如果没有,则p为空 if(p) { printf("学号,姓名,年龄,性别为:\n”); printf("%d,%s,%d,%s\n”,p—>data.num,p—>data.name,p->data.age,p->data。sex); } else printf(”找不到此学生:\n"); } void insert(list *h) // 插入一个学生信息到链表中 (插到链表末尾) { list *p,*q,*r; p = h—>next; r = h; q = (list *)malloc(sizeof(list)); //申请一个新结点 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的结点,如果没有,则p为空 p = p—〉next; } if(p) { r—>next = p—〉next; p—〉next = NULL; free(p); printf(”学生信息已删除!\n\n”); } else printf(”找不到此学生\n\n”); } 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; }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服