目 录

TOC \o "1-3" \h \z 实习步骤 2

实习报告规范 4

实习报告样例1最大公因数 5

实习报告样例2 进制转换 11

DEV C++ 调试方法简介 18

Visual C++6.0调试方法简介 24

实验用书推荐 28

预备实验1 字符串处理 30

预备实验2 文件读取 31

预备实验3 随机数生成 32

预备实验4 递归函数 33

预备实验5 字符串数组的查找 34

实验1约瑟夫环问题 35

实验2 一元多项式的运算 36

实验3 逆波兰表达式求值 37

实验4 杨辉三角显示 39

实验5四则运算表达式求值 40

实验6 BST 41

实验7 优先队列与堆 42

实验8 哈夫曼编/译码器 44

实验9 图的遍历问题 45

实验10 教学计划编制问题 47

实验11 最短路径问题 48

实验12 最小生成树问题 50

实验13 快速排序 51

实验14 基数排序 53

实验15 散列表 54

实验16 自组织线性表 56

实习步骤

(一)问题分析和任务定义

在进行设计之前,首先应该充分地分析和理解问题,明确问题要求做什么?限制条件是什么。注意:本步骤强调的是做什么?而不是怎么做。

主要完成三个方面的工作:

分析并确定问题要处理的对象(数据)是什么。例如:输入数据的类型、值的范围以及输入的形式。

分析并确定要实现的功能是什么。也就是说要对输入的数据进行什么样的处理。注意:对问题中描述的需要实现的功能,应避开算法(具体的实现方法)和所涉及的数据类型,仅需对所需完成的任务做出明确的定义。

分析并确定处理后的结果如何显示。

这一步还应该为调试程序准备好测试数据,包括合法的输入数据和非法形式的输入数据;以及相应的输出结果。

(二)数据类型和系统设计

当需求分析结束,明确问题要求后,开始为编写程序设计合适的数据结构和算法。本步骤分概要设计和详细设计两步实现。

概要设计指的是,对问题描述中涉及的操作对象定义相应的抽象数据类型,并设计合适的算法;以及定义程序各个功能模块和模块之间的关系。在这个过程中,要根据问题的功能需求综合考虑,设计时空复杂度最优的抽象数据结构和算法(注意:实现提示和给出的部分代码中以及给出了建议)。抽象数据类型的实现尽可能做到数据封装,基本操作的规格说明尽可能明确具体,算法思想和过程明确有效,程序结构清晰、合理、简单和易于调试。作为概要设计的结果,应写出每个抽象数据类型的定义(包括数据结构的描述和每个基本操作的规格说明),主要模块的算法思想,并画出模块之间的调用关系图。

详细设计则定义相应的物理存储结构(抽象数据类型的物理实现)并写出各基本操作的伪码算法,以及主要模块算法的具体步骤。详细设计的结果是对数据结构和基本操作的规格说明做出进一步的求精,写出数据存储结构的类型定义,算法书写规范(采用文字性的步骤描述或者算法流程图的形式都行)。在求精的过程中,应尽量避免陷入语言细节,不必过早描述辅助数据结构和局部变量。

(三)编码实现和静态检查

在实验过程中,题目中会给出程序的部分源代码,根据实习第二步的设计结果以及源代码的提示,编码实现程序的其余部分。

编码是把详细设计的结果进一步求精为程序设计语言程序。对于编程很熟练的读者,如果基于详细设计的伪码算法就能直接在键盘上输入程序的话,则可以不必用笔在纸上写出编码,而将这一步的工作放在上机准备之后进行,即在上机调试之前直接用键盘输入。

写出编码的程序后,在上机(编译和调试)之前,认真的静态检查是必不可少的。多数初学者在编好程序后处于以下两种状态之一:一种是对自己的“精心作品”的正确性确信不疑;另一种是认为纠查错误是编译器的工作。这两种态度是极为有害的。事实上,非训练有素的程序设计者编写的程序长度超过50行时,极少不含有除语法错误以外的错误。上机动态调试决不能代替静态检查,否则调试效率是极低的。

静态检查主要有两种方法,一是用一组测试数据手工执行程序(通常应先分模块检查);二是通过阅读或给别人讲解自己的程序而深入全面地理解程序逻辑,在这个过程中再加入一些注解和断言。如果程序中逻辑概念清楚,后者将比前者有效。

(四)上机准备和上机调试

上机准备包括一下几个方面:

熟悉机器的操作系统和语言集成环境的用户手册,尤其是最常用的命令操作,以便顺利进行上机的基本活动。

上机调试程序时要带一本高级语言教材或手册。

掌握调试工具,考虑调试方案,设计测试数据并手工得出正确结果。“磨刀不误砍柴工”。计算机各专业的学生应该能够熟练运用高级语言的程序调试器DEBUG调试程序。

上机调试程序时要带一本高级语言教材

c语言实习,c语言实习实例经典版.doc相关推荐

  1. 极客c语言课程设计,c语言课程设计之实习报告共5天完整.doc

    c语言课程设计之实习报告共5天完整 <C语言程序设计> 短学期实习报告 系名:计算机科学与技术系 专业:软件工程 年级:2015级 姓名: <C语言程序设计>短学期实习成绩评定 ...

  2. C语言程序设计有pjcj吗,C语言程序设计课程设计实习报告

    <C语言程序设计课程设计实习报告>由会员分享,可在线阅读,更多相关<C语言程序设计课程设计实习报告(22页珍藏版)>请在人人文库网上搜索. 1.长江大学C语言程序设计课程设计实 ...

  3. 成绩分析系统c语言,学生成绩分析及排名系统C语言程序设计课程设计实习报告...

    学生成绩分析及排名系统C语言程序设计课程设计实习报告 长江大学计算机上机实习报告题目学生成绩分析及排名系统姓名学院__专业班级学号指导教师20120222目录一设计目的1二课程设计摘要2三课程设计的任 ...

  4. python函数装饰器详解_Python语言函数装饰器用法实例详解

    这篇文章主要介绍了Python语言函数装饰器用法,以实例形式较为详细的分析了Python函数装饰器的常见使用技巧,需要的朋友可以参考下,希望对大家学习Python语言有所帮助. 本文实例讲述了pyth ...

  5. C语言库函数大全及应用实例二

                                                 [编程资料]C语言库函数大全及应用实例二 函数名: bioskey 功 能: 直接使用BIOS服务的键盘接口 ...

  6. 《R语言与数据挖掘最佳实践和经典案例》—— 第3章 数 据 探 索

    本节书摘来自华章出版社<R语言与数据挖掘最佳实践和经典案例>一 书中的第3章,第3.1节,作者:(澳)Yanchang Zhao,更多章节内容可以访问云栖社区"华章计算机&quo ...

  7. C语言库函数大全及应用实例七

    原文:C语言库函数大全及应用实例七 [编程资料]C语言库函数大全及应用实例七 函数名: getw 功 能: 从流中取一整数 用 法: int getw(FILE *strem); 程序例: <? ...

  8. C语言库函数大全及应用实例十四

    原文:C语言库函数大全及应用实例十四                                       [编程资料]C语言库函数大全及应用实例十四 函数名: strset 功 能: 将一个串 ...

  9. 单片机独立式按键c语言程序,(原创)51单片机C语言程序设计--速学教程实例(入门篇)之独立按键(查询)...

    (原创)51单片机C语言程序设计--速学教程实例(入门篇)之独立按键(查询) /************************************************************ ...

最新文章

  1. 我的jQuery动态表格插件二
  2. 科大星云诗社动态20210412
  3. Linux下的基本指令
  4. Altium Designer如何画虚线
  5. C语言,字符串指针做函数参数
  6. jsonobject转list集合_怎样优雅的操作集合,CollectionUtils工具类正确使用姿势
  7. 收藏 eclipse 最常用的10个快捷键
  8. 自动初始化 git Bash脚本
  9. Js判断当前浏览者的操作系统
  10. Angular4+ 页面切换 显示进度条
  11. LINUX使用patchelf增加/修改rpath
  12. 开心网之开心餐厅游戏分析报告
  13. 变截面悬臂梁弯曲变形计算:理论计算以及有限元结果对比
  14. hexo笔记十五:next主题添加网易云外链
  15. 【信息学奥赛】2070:【例2.13】数字对调C++)
  16. oracle dba 培训教程 第15章 管理角色
  17. 【软件开发知识积累】深入理解HTTP 原理基础与变迁
  18. ye graph editor安装
  19. S3DIS场景点云数据集
  20. 关于Remoting

热门文章

  1. 03数据库关系代数习题
  2. 用计算机控制神舟十号,2010年全国自考操作系统概论模拟试卷(十)
  3. vue抽屉_实现抽屉列表-微信小程序
  4. 朴素贝叶斯分类算法原理
  5. ADG架构搭建5 -- 一主两备ADG主备切换
  6. 百度手机输入法自定义码表
  7. Facebook营销常犯的错误,看看你中招了吗?
  8. Symbian OS SDKs简介(转)
  9. C语言猜字游戏---翁凯
  10. 第一次单元测验参考答案详解 mooc程序设计入门——翁凯