关于我们
书单推荐
新书推荐
|
|
定 价:25 元
丛书名:应用型本科信息大类专业“十三五”规划教材
- 作者:孙丽云主编
- 出版时间:2017/2/1
- ISBN:9787568026079
- 出 版 社:华中科技大学出版社
- 中图法分类:TP312.8
- 页码:118
- 纸张:胶版纸
- 版次:1
- 开本:16K
《数据结构实验指导与习题解析(C语言版)》是与《数据结构从应用到实现(C语言版)》配套的辅助教材。本书分为两大部分,第一大部分,和教材中每章对应,每章的实验分“基本实验练习”,“自己动手做练习”和“综合应用实例”3个部分,力求综合应用课本中的知识,解决实际生活中的例子;第二大部分,对教材中的课后习题进行了详细解析。
适读人群 :本书可作为高等院校计算机类、电子信息类、自动化类、电气类、光电类及其他相关专业学生的教材和教学参考书,也可作为工程技术人员的参考资料和感兴趣的读者的自学读物。
本书是与 《数据结构(C语言版)》配套的辅助教材。本书分为两大部分:第一部分为与《数据结构(C语言版)》中每章对应的实验指导,其中每章的实验分为“基本实验练习”“自己动手做练习”和“综合应用实例”三个部分,力求综合应用课本中的知识,解决实际生活中的例子;第二部分对《数据结构(C语言版)》书中的课后习题进行了详细解析。本书的实验指导部分,在“基本实验练习”环节给出了一个问题的完整实现算法,学生可以先通过读代码,来理解算法;在“自己动手做练习”环节给出了一个相似的问题,学生可以借助解决相似问题,来进一步理解算法,并且在本部分只给出了程序运行的界面图,即给出了具体要求,但没有给出代码,学生可模仿“基本实验练习”中的代码来实现,进行自我练习;在“综合应用实例”环节给出了一个综合应用的例子,并给出了具体的实现代码,学生可以将本部分知识进行综合应用。
“数据结构”课程是高等学校计算机及相关专业的一门重要的专业基础课程,但很多学生存在“理论强,实践弱”的现象,即课堂上所讲算法都明白,但自己无法实现这些算法。
本书的实验指导部分,在“基本实验练习”环节给出了一个问题的完整实现算法,学生可以先通过读代码,来理解算法;在“自己动手做练习”环节给出了一个相似的问题,学生可以借助解决相似问题,来进一步理解算法,并且在本部分只给出了程序运行的界面图,即给出了具体要求,但没有给出代码,学生可模仿“基本实验练习”中的代码来实现,进行自我练习;在“综合应用实例”环节给出了一个综合应用的例子,并给出了具体的实现代码,学生可以将本部分知识进行综合应用。
本书中所有算法都采用C语言函数的形式描述,这些函数中都在关键语句进行了详细注释,并已在Visual C++6.0运行环境下调试运行,便于读者理解算法,并方便读者对基本运算进行验证,从而在此基础上学会应用。
本书主编为燕京理工学院孙丽云和马睿,副主编为燕京理工学院李珊和宋丽辉、武汉工程科技学院徐梅。编写人员分工为:马睿编写了实验1、实验8、实验9,第1章、第6章和第7章的课后习题解析;宋丽辉编写了实验2并完成了统稿工作;孙丽云编写了实验3、实验4、实验5、实验7、实验10、综合实验1、综合实验2,第2章、第3章的课后习题解析,并进行了统稿;李珊编写了实验6和第4章的课后习题解析;邵兰洁编写了第5章的课后习题解析;徐梅编写了第8章的课后习题解析和自测练习题。课题组成员刘淑艳、刘佩贤、王慧、牛玉玲等提供了大量的编写素材。
本书在编写过程中得到了燕京理工学院信息科学与技术学院各位领导的指导和帮助,同时得到了华中科技大学出版社的大力支持,在此一并表示感谢。
为了方便教学,本书还配有电子课件等教学资源包,任课教师和学生可以登录“我们爱读书”网(www.ibook4us.com)免费注册并浏览,或者发邮件至hustpeiit@163.com免费索取。
由于作者水平有限,书中难免有错误及疏漏之处,恳请同行专家及读者指正,以便进一步提高本书质量。
编者2016年12月
实验1结构体基本练习实验()
一、 实验目的()
二、 基本实验练习()
三、 自己动手做练习()
四、 综合应用实例()
实验2顺序表实验()
一、 实验目的()
二、 基本实验练习()
三、 自己动手做练习()
四、 综合应用实例()
实验3单链表实验()
一、 实验目的()
二、 基本实验练习()
三、 自己动手做练习()
四、 综合应用实例()
实验4栈实验()
一、 实验目的()
二、 基本实验练习()
三、 自己动手做练习()
四、 综合应用实例()
实验5队列实验()
一、 实验目的()
二、 基本实验练习()
三、 自己动手做练习()
四、 综合应用实例()
实验6串实验()
一、 实验目的()
二、 基本实验练习()
三、 自己动手做练习()
四、 综合应用实例()
五、 注意事项及小结()
实验7二叉树实验()
一、 实验目的()
二、 基本实验练习()
三、 自己动手做练习()
四、 综合应用实例()
实验8图实验()
一、 实验目的()
二、 基本实验练习()
三、 自己动手做练习()
四、 综合应用实例()
实验9查找实验()
一、 实验目的()
二、 基本实验练习()
三、 自己动手做练习()
四、 综合应用实例()
实验10排序实验()
一、 实验目的()
二、 基本实验练习()
三、 自己动手做练习()
四、 综合应用实例()
综合实验1线性结构综合性实验()
一、 实验目的()
二、 实验要求()
三、 详细实验步骤要求()
四、 提交作业要求()
综合实验2树形结构综合性实验()
一、 实验目的()
二、 实验要求()
三、 详细实验步骤要求()
四、 提交作业要求()
第1章课后习题解析()
第2章课后习题解析()
第3章课后习题解析()
第4章课后习题解析()
第5章课后习题解析()
第6章课后习题解析()
第7章课后习题解析()
第8章课后习题解析()
自测练习题()
参考文献()
实验1结构体基本练习实验 实验1 结构体基本练习实验
一、 实验目的 掌握结构体类型变量的定义和使用。
二、 基本实验练习 有n个学生的信息(包括学号、姓名、成绩),要求用键盘输入上述各项数据,按照成绩从低到高的顺序输出各学生的信息。 1. 定义一个结构体类型 typedef struct student { int no; /*学号*/ char name\[20\];/*姓名*/ double score;/*成绩*/ }STU; 2. 创建结构体数组 分析 为将创建好的结构体数组带回到主调函数,这里使用数组名作为形式参数。 void CreateStu(STU s\[\],int n) { int i; for(i=0;i { printf("请输入第%d个同学的学号:\\n",i+1); scanf("%d",&s\[i\].no); printf("请输入第%d个同学的姓名:\\n",i+1); scanf("%s",s\[i\].name); printf("请输入第%d个同学的成绩:\\n",i+1); scanf("%lf",&s\[i\].score); } } 3. 对结构体数组排序 分析这里采用冒泡排序对结构体数组进行排序,flag是数组元素交换的标志位,当一趟排序未出现两两元素交换则结束排序。 void SortStu(STU s\[\],int n) { int i,j,flag; STU t; for(i=0;i { flag=1; for(j=0;j if(s\[j+1\].score { flag=0; t=s\[j\]; s\[j\]=s\[j+1\]; s\[j+1\]=t; } if(flag) return; } } 4. 输出结构体数组 void PrintStu(STU s\[\],int n) { int i; printf("学号姓名 成绩\\n"); for(i=0;i { printf("%6d%9s%10.1lf\\n",s\[i\].no,s\[i\].name,s\[i\].score); } }
三、 自己动手做练习 在上述建立的学生信息结构体数组中,编写一个函数int SearchStu(STU s\[\],int n,int no)来实现在长度为n的学生信息结构体数组s中查找学号为no的学生,若找到了,输出查找到学生的完整信息,并返回学生所在的数组下标;否则,提示查找失败,返回-1。实现后的程序运行界面如图11所示。 图11实验1练习运行界面
四、 综合应用实例
|