数据结构实验.ppt
《数据结构实验.ppt》由会员分享,可在线阅读,更多相关《数据结构实验.ppt(38页珍藏版)》请在第壹文秘上搜索。
1、实验一实验一 C语言复习语言复习l教学目的与要求 本实验的目的是帮助大家复习C语言的使用方法,特别是指针、结构体的内容,同时也为以后的各个实验做准备 l教学的重点与难点 指针、结构体、数组三种数据类型的混合使用实验预习检查内容l指针指向数组后,数组元素的访问有哪些形式?指针指向数组后,数组元素的访问有哪些形式?l在下列类型定义后,表达式在下列类型定义后,表达式a3.num的逻辑含义的逻辑含义是什么?类型是什么?是什么?类型是什么?struct studentlong num;float score;struct student *next;a5; 答:3号元素的num数据域long类型例题例题
2、#define NULL 0struct studentlong num;float score;struct student *next;main () struct student a,b,c,*head,*p; a.num=99101;a.score=89.5; b.num=99103;b.score=90; c.num=99107;c.score=85;/a 、b、 c变量赋值head=&a;a.next=&b;/a的后续为的后续为bb.next=&c;c.next=NULL;p=head;do printf(“%ld%5.1fn”,p-num,p-score ););/*输出输出学号
3、和成绩学号和成绩*/ p=p-next;while( ); 答:答:p!=NULLl9、设计一个可进行复数运算的演示程序。、设计一个可进行复数运算的演示程序。要求:实现下列六种基本运算:要求:实现下列六种基本运算:1)由输入)由输入的实部和虚部生成一个复数;的实部和虚部生成一个复数;2)两个复数)两个复数求和;求和;3)两个复数求差;)两个复数求差;4)两个复数求)两个复数求积;积;5)从已知复数中分离出实部;)从已知复数中分离出实部;6)从)从已知复数中分离出虚部。运算结果以相应已知复数中分离出虚部。运算结果以相应的复数或实数的表示形式显示。的复数或实数的表示形式显示。l10、设计一个可进行
4、有理数运算的演示程、设计一个可进行有理数运算的演示程序。要求:实现两个有理数相加、相减、序。要求:实现两个有理数相加、相减、相乘以及求分子或求分母的运算。相乘以及求分子或求分母的运算。实验内容及要求实验内容及要求l有有10个学生,每个学生的数据包括学号、个学生,每个学生的数据包括学号、姓名、姓名、3门课的成绩,从键盘输入门课的成绩,从键盘输入10个学个学生数据,要求打印出生数据,要求打印出3门课总平均成绩,门课总平均成绩,以及最高分的学生的数据。以及最高分的学生的数据。l 要求:用要求:用input函数输入函数输入10个学生数据,个学生数据,用用average 函数求总平均分;用函数求总平均分
5、;用max函数函数找出最高分的学生数据;总平均分和最高找出最高分的学生数据;总平均分和最高分学生的数据都在主函数中输出。分学生的数据都在主函数中输出。 实验内容及要求实验内容及要求讨论讨论l指出下列程序段的错误:lstruct studentllong num;lfloat score;lstruct student *next;la,b,c,*p;l a.next=&b;l b.next=&c;l p=a;l while (p)lprintf(“%ld%5.2f”,p-num,p-score);l P+;l 答:增加:c.next=NULL;p=a; =P=&a;P+; =P=p-next;
6、第二讲 线性表l教学目的与要求教学目的与要求 掌握数据结构中表的基本概念。 熟练掌握线性表的基本操作,插入、删除、查找等运算在顺序存储结构和链接存储结构上的实现。 熟练掌握链表的各种操作和应用。l教学的重点与难点教学的重点与难点线性表的基本操作在链接存储结构上的实现。实验预习检查内容l完成下列程序,指出完成下列程序,指出main的结构的结构l#include l#define MaxLen 50ltypedef int elemtype; struct datatype elemtype *elem; int length; typedef struct datatype sqlist ;lv
7、oid create (sqlist *a)llint i,n;la-elem=(elemtype *)malloc(MaxLen*sizeof(elemtype);lprintf(“创建一个顺序表创建一个顺序表n”););lprintf(“输入元素个数:输入元素个数:”););lscanf(“%d,&a-length);lfor (i=0;ilength;i+)ll printf(“输入第输入第%d个元素值:个元素值:”,i););l scanf(“%d,a-elem+i);lllvoid invert(sqlist *a)l lint m=a-length/2,I;lelemtype te
8、mp;lfor (I=0;Ielem+i)= ; l =temp; ll(1)*(a-elem+i)(2)*(a-elem+a-length-1-i)(3) )*(a-elem+a-length-1-i)lVoid disp(sqlist *a)l int I;lfor (i=0;ielem+i);llvoid main()llsqlist b,*a;la=&b;lcreate(a);ldisp(a);linvert(a);ldisp(a);l实验内容及要求实验内容及要求l4、7、13必做,其余老师选做几题必做,其余老师选做几题 l4、键盘输入学生信息(包括学号和、键盘输入学生信息(包括学号和
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 实验
