




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档精品文档..班级: 姓名: 学号:实验一线性表的基本操作一、实验目的1、掌握线性表的定义;2、掌握线性表的基本操作,如建立、查找、插入和删除等。二、实验内容定义一个包含学生信息(学号,姓名,成绩)(二选一,使其具有如下功能:根据指定学生个数,逐个输入学生信息;逐个显示学生表中所有学生的相关信息;根据姓名进行查找,返回此学生的学号和成绩;根据指定的位置可返回相应的学生信息(学号,姓名,成绩;给定一个学生信息,插入到表中指定的位置;删除指定位置的学生记录;统计表中学生个数。三、实验环境VisualC++四、程序分析与实验结果#include<stdio.h>#include<malloc.h>#include<stdlib.h>#include<string.h>#defineOK1#defineERROR0#defineOVERFLOW-2typedefintStatus;//定义函数返回值类型typedefstruct{charnum[10];//学号charname[20];//doublegrade;//成绩}student;typedefstudentElemType;typedefstructLNode{ElemTypedata;//数据域structLNode*next;//指针域}LNode,*LinkList;StatusInitList(LinkList&L)//构造空链表L{L=(structLNode*)malloc(sizeof(structLNode));L->next=NULL;returnOK;}StatusGetElem(LinkListL,inti,ElemType&e)//i返回给e{LinkListp=L->next;intj=1;while(p&&j<i){p=p->next;++j;}if(!p||j>i)returnERROR;e=p->data;returnOK;}StatusSearch(LNodeL,charstr[],LinkList&p)//根据名字查找{p=L.next;while(p){if(strcmp(p->,str)==0)returnOK;p=p->next;}returnERROR;}StatusListInsert(LinkListL,inti,ElemTypee)//在i个位置插入某个学生的信息{LinkListp,s;p=L;intj=0;while(p&&j<i-1){p=p->next;++j;}if(!p||j>i-1) returnERROR;s=(structLNode*)malloc(sizeof(LNode));s->data=e;s->next=p->next;p->next=s;returnOK;}StatusListDelete(LinkListp,inti)//删除i位置的学生信息{intj=0;while((p->next)&&(j<i-1)){p=p->next;++j;}if(!(p->next)||(j>i-1))returnLinkListq;q=p->next;p->next=q->next;deleteq;returnOK;}voidInput(ElemType*e){printf("姓名:");scanf("%s",e->name);printf("学号:");scanf("%s",e->num);printf("成绩:");scanf("%lf",&e->grade);printf("输入完成\n\n");}voidOutput(ElemType*e){printf(" 姓 名 :%-20s\n 绩:%-10.2lf\n\n",e->name,e->num,e->grade);}intmain(){
号 :%-10s\n 成LNodeL;LinkListp;ElemTypea,b,c,d;printf("\n********************************\n\n");puts("1.构造链表");puts("2.录入学生信息");puts("3.显示学生信息");puts("4.输入姓名,查找该学生");puts("5.显示某位置该学生信息");puts("6.在指定位置插入学生信息puts("7.在指定位置删除学生信息puts("8.统计学生个数");puts("0.退出");printf("\n********************************\n\n");intx,choose=-1;while(choose!=0){puts("请选择:");scanf("%d",&choose);switch(choose){casecase
if(InitList(p))printf("成功建立链表\n\n");elseprintf("链表建立失败\n\n");break;printf("请输入要录入学生信息的人数:");scanf("%d",&x);for(inti=1;i<=x;i++){printf("第%d个学生:\n",i);Input(&a);ListInsert(&L,i,a);}case
break;for(inti=1;i<=x;i++){GetElem(&L,i,b);Output(&b);}case
break;chars[20];printf("请输入要查找的学生姓名:");scanf("%s",s);if(Search(L,s,p))Output(&(p->data));elseputs("对不起,查无此人");casecase
puts("");break;printf("请输入要查询的位置:");intid1;scanf("%d",&id1);GetElem(&L,id1,c);Output(&c);break;printf("请输入要插入的位置intid2;scanf("%d",&id2);printf("请输入学生信息:\n");Input(&d);if(ListInsert(&L,id2,d)){x++;puts("插入成功");puts("");}else{puts("插入失败");puts("");}case
break;printf("请输入要删除的位置intid3;scanf("%d",&id3);if(ListDelete(&L,id3)){x--;puts("删除成功");puts("");}else{puts("删除失败");puts("");}break;case8:精品文档printf("已录入的学生个数为:%d\n\n",x);break;}}printf("\n\n谢谢您的使用,请按任意键退出\n\n\n");system("pause");return0;}用户界面:根据指定学生个数,逐个输入学生信息:.精品文档i]C:\Use扒VANG\Deskl:op诔命名1.exe三星了于三三亏共.三星了于三三亏共.....1三豆了百欠亏三芢开芝八〉亨皂仁开-1三豆了百欠亏三芢开芝八〉逻己:::::;:;;:::,:,:::.:::::::::::::::圭.l成功,洼宁考迳乒·广:空葫入军了入牛十言J:,..竺1)亡三斗名村足玉:::::::号.,5=酘.,姓名.三34元二号.三34元哎琦33\.宁一成..洘远拦:..逐个显示学生表中所有学生的相关信息:归耋圈眉匾,通匿逞根据姓名进行查找,返回此学生的学号和成绩:涅远择:4湮芷要五代]学主过名寸尽亏姓名:杠导寻学号:151荧噢:100.88.精品文档根据指定的位置可返回相应的学生信息(学号,姓名,成绩:给定一个学生信息,插入到表中指定的位置:删除指定位置的学生记录:统计表中学生个数:五、实验
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- DB61T 775-2014 小麦 西农556规范
- 电梯使用人群及需求分析
- 光伏电池板防护与清洁方案
- 电梯改造环境保护与施工安全方案
- 2025重庆市万州区大周镇人民政府招聘非全日制公益性岗位1人备考练习试题及答案解析
- 建筑项目资金管理实施方案
- 2025重庆渝北区同茂小学校公开招聘编外教师6人考试参考试题及答案解析
- 2025云南昆明市盘龙区联盟街道社区服务中心见习生招录备考练习试题及答案解析
- 2025年福建福清市属国有企业第二批招聘3人备考练习题库及答案解析
- 2025云南省宣威市丰华街道中心学校招聘编制外学龄前教育有关辅助人员(3人)考试参考试题及答案解析
- 2025年巴彦淖尔市磴口县社区工作者招聘考试试题【答案】
- 《爱的五种能力》
- 石膏固定病人护理常规
- 2025至2030中国管道运输行业深度研究及发展前景投资评估分析
- 麻醉科临床操作技术规范
- 办公场所消防培训课件
- 术后谵妄护理查房
- 绿地香港招标管理制度
- 2025年新疆中考数学试卷真题(含答案解析)
- DNA纳米导线-洞察及研究
- 2025年广西专业技术人员继续教育公需科目(三)答案
评论
0/150
提交评论