《算法到程序的转换》由会员分享,可在线阅读,更多相关《算法到程序的转换(2页珍藏版)》请在金锄头文库上搜索。
1、算法到程序的转换用伪代码描述的算法是不能直接在机器上执行的,从算法的伪代码描述到算法的实现, 所必须做的事情通常包括如下几个方面。 一 常量、结构体、扩充数据类型的说明 比如# define TRUE 1 二 添加库函数说明语句 比如# include 三 局部变量的添加 比如 int i,min; 四 语句的转换 将类 C 中一些不符合 C/C+语言的语法,如数据交换及一些为描述算法方便而扩充的 其他语句转换成符合语法的语句。 比如 ajaj+1; 转换为: x=aj; aj=aj+1; aj+1=x; 五 辅助过程或者函数的添加 算法描述只涉及问题的求解部分,通常只对应一个或者多个函数或者
2、过程,而不是完 整的可运行的程序。所以除了上述 4 步之外还需要添加一些数据输入输出及调用函数等。 由此可见,算法描述和算法实现是有一定距离的,因为本课程的关注点主要在算法的 描述上,而描述是看不到运行结果的,所以同学们容易感到迷茫。这个问题,我们可以通 过验证性实践验证性实践来强化认识。 下面是验证性实践的步骤: 1 预备知识的学习 验证性实验的目的是验证教材中的数据结构及其应用的算法,实验前有必要了解实验 相关的背景,即相关知识点,明确本次实验的内容。 2 源程序阅读和分析 实验前,需要弄清楚下列问题。即: (1)程序结构和程序功能; (2)输入数据有什么?格式是什么? (3)输出是什么?
3、输出数据的意义是什么? (4)设计验证实例为运行程序做准备。 3 调试和测试源程序 (1)编写源程序 (2)编译链接程序 (3)用设计好的实例验证程序 (4)对程序结果进行分析,通过分析运行结果和输入的合理性,理解算法思想与实 现,判断算法逻辑上的正误。 4 补充和改进源程序第一次实验的内容:第一次实验的内容: 单链表验证程序结构。在主程序中实现菜单的选择,所选择的菜单项目包括: (1)创建链表; (2)在第 i 个位置插入元素;(3)删除第 i 个位置元素; (4)返回第 i 个元素值; (5)顺序查找; (6)求前驱; (7)测表空; (8)测表长; (9)显示表; (10) 退出。 要求:要求: 1 将所完成的程序打包(以学号和姓名为压缩包文件名)将所完成的程序打包(以学号和姓名为压缩包文件名) ,并在压缩包中放入一个,并在压缩包中放入一个 word 文文 件以添加运行界面的截图。件以添加运行界面的截图。 2 将打包好的文件上传到教师机。将打包好的文件上传到教师机。 (教师机的(教师机的 ip 在实验当天会有老师通知)在实验当天会有老师通知) 3 若有内容当天未完成,可于课后完成并上交。若有内容当天未完成,可于课后完成并上交。