怎么写c语言综合实验设计报告?

如题所述

举个楼主自己写的例子吧,仅供参考。
c语言作业报告书
题 目:二次探测再散列法解决冲突建立哈希表并查找
完成时间:2012年5月31号
学 号:2011013290 姓名:聂亮兵 专业班级:信管112班
1. 实习任务与目的
  实验任务:独立写出哈希查找的相关代码并画出核心的算法流程图,记录相关实验数据,得出实验结果。
  试验目的:通过两者运行时间的对比,加深对哈希查找和顺序查找各自优缺点的理解,并进一步熟悉哈希查找的原理和流程。
2. 实习内容及过程
  实习内容:用除留余数法和二次探测再散列法解决冲突建立哈希表并查找,通过函数GetTickCount计算运行时间;再同样计算顺序查找的方法的查找时间。
  实习过程:
  查阅关于库函数<windows.h>的相关内容,并熟悉函数GetTickCount()的用法。
  规划算法流程,画出主要函数的流程图。具体流程是:读入文件数据——顺序查找——输出结果——哈希查找——输出结果。
  对应流程写出相关函数,完善主函数。
  进行程序的运行和调试,修改一些不足和bug。
  添上相关注释。
  运行程序进行实验并得出实验结果,记录。
  完成实验报告。
3. 实验结果分析
  实验结果:由于所给数据Data.txt数据量过小,实验结果不明显,两种查找所耗时间均被系统默认为0;如图所示为编号为37、1294、4091的三个数据元素:
  分析:哈希查找的方法适用于数据在区间内随机分布均并且量大的数据形式;而顺序查找原理简单,但是不适用于大量数据的查找。
4. 核心算法流程图
  
图1:主函数流程图

图2:哈希查找流程图
5. 实习总结及体会
  这个实验难度不大,但是需要自己高质量的独立完成,对自己是一个总结归纳,能通过这个实验清楚自己哪些地方平时没有注意到,哪些地方是自己擅长并应该继续保持的。
  此外,本实验的全过程能让自己了解正式的程序、任务和报告等的完成流程。通过自己独立完成这个实验,再和标准的数据结构代码比较,找出自己代码的亮点、不足以及欠缺,让自己明白哪些地方是自己想不到的,哪些方法是自己不能想到的,并以此学习好的编程思想和优秀的编程技巧和编程风格。
  本次试验中:
  正式的程序代码中,外部变量的使用要格外注意,不能随意使用外部变量。但是本程序具有独立性,不用与其他程序代码相衔接,采用外部变量的方法,减少函数调用的时候的复制传值的次数,提高效率。
  正式的编程思想中,要有统一的命名方式。这包括两个方面。其一是自己的命名规则要统一,不能乱。其二是与合作小组之间的命名规则要统一,提高代码的可嵌入性。但是本实验由自己独立完成,命名规则按照自己的习惯而定,与课本命名规则有点出入。
  二次探测再散列法解决冲突中,课本中没有提到如果H(a)-m^2<0时的处理方法。本程序中采用的方法是取绝对值。二次探测再散列法中,再散列需要在循环中进行,直到找到位置e为止。这个过程中m需要进行两种互斥变化:一种是 *-1 ;一种是 +1;再循环中不好实现。本程序中采用一个信号变量,每次循环自增1,奇偶数分别执行不同的变化。
温馨提示:答案为网友推荐,仅供参考
相似回答