C语言程序设计上机指导书_第1页
C语言程序设计上机指导书_第2页
C语言程序设计上机指导书_第3页
C语言程序设计上机指导书_第4页
C语言程序设计上机指导书_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

姓姓 名 名 学学 号 号 专专 业 业 日日 期 期 目目 录录 序 指导原则及 VS2005 环境中编译 C 程序 一 熟悉 C 语言集成开发环境 二 掌握基本数据类型在程序中的正确应用 三 运算符与表达式的使用 四 掌握顺序结构程序设计 五 掌握顺序结构与输入输出函数 六 分支结构程序 一 七 分支结构程序 二 八 循环结构程序设计 一 九 循环结构程序设计 二 十 嵌套循环 十一 数组 一 十二 数组 二 十三 数组 三 十四 函数 一 十五 函数 二 十六 函数 三 和预处理 十七 指针 一 十八 指针 二 指导原则指导原则 促进学生针对实际问题 用所学 C 语言知识编写符合规范的源程序代码 在某一集成开发环境下尽一 切调试技能调试程序 并对运行结果进行分析处理 得出正确结论 解决好实际问题 更快更好地掌握所 学知识 技能和软件的一向开发方法 目的 1 通过上机实验 加深对教材内容的理解 特别是一些语法规定 熟练掌握各种语法规则 2 通过上机实验 熟悉某个 C 语言集成开发环境 掌握集成开发环境下程序的编辑 编译与连接 运行的完整过程 3 通过上机实验 要学会调试程序 能根据系统给出的 出错信息 判断错误所在 并修改错 误 使程序正确运行 要求 1 复习与本次实验相关的教学内容 2 了解集成开发环境的操作步骤 3 准备好实验内容 对于编程题 一定要自己动手 书写工整 并人工检查无误后才能上机实验 以提高上机效率 4 要准备好调试和运行程序时所需的数据 5 对运行中可能出现的问题事先作出估计 并对程序中有疑问的地方作上标记 以便在运行时给予 注意 并在程序调试时 把系统给出的出错原因 解决方法等记载在源程序之后 程序运行结束 后 把运行结果也记录下来 6 每个实验应独立完成 对实际问题所编写的源程序需写出完整实验的报告 VS2005VS2005 编译环境中编写运行编译环境中编写运行 C C 程序程序 Turbo C 2 0 发布于 1989 年 对历史并不太长而发展却神速的 IT 业来说 确实是古董级的软件了 但它几乎是最后一个专门为 C 语言设计的开发环境 具备学习 C 语言的一切条件 没有任何非 C 语言的 东西干扰初学者 所以一直被各大高校的 C 语言课堂采用 C 的发展使 C 的开发环境大行其道 因为 C 几乎完全兼容 C 语言 两者无论编译器还是编辑器 调试器都可以用同一套程序实现 而且 C 共享 C 的库函数 很多软件还是用两者混合编程实现 所以基 本所有的 C 环境都同时支持 C 语言 美国微软公司出品的 Visual C 以下简称 VC 是 Windows 平台上最流行的 C C 集成开发环境 从 1993 年发行 1 0 版本开始 历经多年锤炼 于 2003 年推出最新的 7 0 版本 Visual C NET 2003 VC 系列产品具有稳定而强大的 IDE 开发环境 以及丰富的调试功能 微软于 2005 年底发布 Visual Studio 2005 下面将介绍在 VS2005 下如何开发 C 语言程序 1 1 编辑 编译与运行 编辑 编译与运行 下面以创建一个判断是否是闰年的程序来演示如何使用 VS2005 开发 C 程序 1 启动 VS2005 新建一个项目 新建一个项目 新建方法有以下几种 A 在 在 VS2005 默认的默认的 起始页起始页 有创建项目一项 单击有创建项目一项 单击 项目项目 P 即可 如图即可 如图 1 所示所示 B 文件 文件 新建 新建 项目 或者使用快捷键项目 或者使用快捷键 Ctrl shift N 如图 如图 2 所示 所示 2 由步骤 1 可以得到以下窗口 在项目类型中选择 Visual C 在右侧模板中单击 Win32 控制台应用 程序 然后在 输入名称 提示处写项目名称 如图 3 1 所示 如 LeapYear 名称下方的 位置 可 以点击 浏览 按钮来更改 然后点击 确定 或者 回车键 即可 然后 出现 欢迎使用欢迎使用 Win32 应用程序向导应用程序向导 对话框 单击 下一步 如图 3 2 示 单击 下一步 出现以下对话框 选择 空项目 单击 完成 如图 3 3 所示 3 在窗口的左侧默认出现 解决方案资源管理器 解决方案 LeapYear 一栏 下面列出 LeapYear 并包 括头文件和源文件及资源文件三个文件夹 如图 4 所示 4 新建一个 C 文件 如图 5 所示 在 源文件 上点击右键 在出现的 添加 栏目上单击 新建项 这里采用 新建项 4 单击 新建项 出现如下的对话框 在左边 类别 一栏选择 代码 右侧的 模板 中选择 C 文件 在下边名称一栏输入 LeapYear c 这里要注意 文件的后缀应该是 C 不能是 默认的 cpp 文件 点击添加即可 补充一点 如果不小心没有写 C 后缀 可以这样处理 在建好的 cpp 文件右键单击 重命名为 C 文件 也可以选择 从项目中排除 J 这一项把该文件去掉 然后新建一个 如图 7 所示 5 在出现的 LeapYear C 空白处编写 C 代码即可 如下图所示 6 写好代码后单击 编译 左边那个是只编译当前文件 右边那个编译全部文件 快捷键 F7 也 可以在 菜单栏 生成生成 生成解决方案生成解决方案 或者别的可选择项目 7 在编译完成之后 我们就可以按 运行运行 ctrl F5 ctrl F5 或者 调试运行 F5 来运行我们的程序了 程序 会提示 此项目已过期 要生成它吗 的对话框 单击 是 在以后的使用中 我们可以直接按 运行 或 调试运行 而不需要单独进行编译 因为当你按 运 行 或 调试运行 的时候它会自动的检测程序是否需要重新编译 如果需要 则会弹出一个对话框询问 你是否同意重新编译 你只需在此时点击 Yes 它就会自动重新编译 连接程序后再运行 非常方便 另外要注意 信息输出窗 系统用来输出一些信息 比如上面在执行编译时 系统就会输出编译的结 果 一般是编译器在程序中发现的错误或者一些警告 如果编译器没有发现错误 error 及警告 warning 那么你会在最后一行看见 0 error s 0 warning s 的字样 注意 在写程序时应当认真而小心的对注意 在写程序时应当认真而小心的对 待每一个待每一个 warningwarning 最好把它们都当作 最好把它们都当作 errorerror 对待 对待 2 2 调试技术 调试技术 用 VS2005 进行程序的调试是非常方便的 我们可以在任一行设置一个断点 当程序执行到断点所在 的行时就会暂时停住 此时 你可以单步执行程序 即一次只执行一条语句 并查看此时各种变量的值 下面我们就来看看如何使用 VS2005 的调试功能 设置断点设置断点 以刚才程序为例 设置一个断点 如下图所示 方法有下面图示几种 可以参考 建议使用快捷键 F9 启动调试使用 F5 调试运行调试运行 现在我们点击菜单栏上的 调试运行按钮 F5 这时程序将自动编译 连接 运行 然后停在我 们所设定的断点的行上 设置断点后 我们可以看见当前行的最左端有一个暗红色的大圆点 具体图略 同学们可以单击 菜单栏 调试 一一对照下面的介绍查看 也可以在菜单栏下面的 调试栏 查看 继续运行 表示继续执行程序 直到碰见下一个断点时为止 重新运行 表示重新从头开始运行程序 停止调试 表示中止现在的调试界面 返回到代码编写界面 逐语句 单步执行命令 如果下一条即将执行的语句是一条函数调用语句 那么就进入到函数体内 逐过程 单步执行命令 如果下一条即将执行的语句是一条函数调用语句 它不会进入函数体内 而是直接执行整个函数 并停到函数返回后的第一条语句上 快速监视 它可以允许程序员自定义想要监视的变量 并在 指定变量显示区 显示 调试程序后 程序提示输入值 这里输入 2000 回车 现在程序已经在设置的断点处停住了 最左 端的黄色箭头指示着即将运行的下一条语句 这个时候可以看见左下方 自动窗口 中有 year 变量值为 2000 如下图所示 点击工具栏 逐语句或者 F11 由于这条语句会调用函数 IsLeapYear 因此它会进行到 IsLeapYear 函数体内去执行 黄色光标指示到函数内 可以反复执行 单步执行命令 即工具栏上的 逐语句 F11 逐过程 F10 按钮 来观察程 序的流程 调试中途发现问题不想再调试 可以 终止调试 也可以在 断点管理 处 删除断点 删除所有断点 禁用所有断点 请同学们实践 快速监视快速监视 通过 调试 菜单上的 快速查看 我们可以设定我们想要监视的变量 并在 监视显示区 中显示 我们可以在最上面的输入框中输入我们想查看的变量的变量名或者表达式 然后我们可以点击 重新 计算 按钮获到这个变量或表达式现在的值 这个值将在下面的显示区中显示 然后我们可以点击 添加 监视 按钮把这个变量或表达式加入到 监视显示区 中 如下图所示 界面风格界面风格 最后简单说一下 VS2005 的一些界面风格 a 鼠标单击 解决方案资源管理器 上方边 不松手 便可以随意拖动位置 共有 5 个提示位置可以 停靠 如下图所示 b 如下图所示 建议初学者可以配置的工具栏上可以是 标准 调试 文本编辑器 其中 文本编辑器 可以方便的给多行程序添加注视 缩进 系统提示输入信息等些功能 另外 单击源文件 下每个文件或者在图中标记的 单击切换文件 均可以查看不同源文件 当然还有很多细节 希望大家慢 慢发现 c 在 VS2005 中 为便于代码的管理和查看 可以将整个的函数部分折叠起来 即只剩下函数名 如 果代码比较多 这样便于隐藏目前不用的代码 不用占用较大的空间 单击函数前面的 号即可隐藏 再单击 又可以复原 如下图所示 3 小结 小结 VS2005 是非常强大的集成开发环境 希望同学们以此为良机 在编程的大道上更进一步 第一次上机第一次上机 熟悉熟悉 C 语言集成开发环境语言集成开发环境 实验目的 实验目的 1 熟悉 C 语言集成开发环境 2 掌握集成开发环境下文件的编写与调用 源程序的编译与调试 程序运行结果的观察与分析 3 掌握 C 语言程序的基本结构 实验要求 实验要求 1 程序编写完后 要对输入的每一个符号和词进行检查核对 不能有错 2 编写源程序时 不要在中文输入法下进行 也不要有首字符大写 否则调试时 会有错误 实验内容 实验内容 1 在 D 盘新建文件夹 D C Program Test 自己学号或姓名如 01 作为以后所做程序的作为以后所做程序的 存放位置存放位置 注 关机前 拷贝入自己的注 关机前 拷贝入自己的 U U 盘 每次换机器须重复此操作 盘 每次换机器须重复此操作 2 编辑 编译 运行下面程序并存盘 文件名为 ex1 1 c 输出信息的 C 源程序 文件名为 ex1 1 c include stdio h void main printf Hello Everyone n Study hard n 输出结果为 3 调入文件 ex1 1 c 把程序修改成下面形式 运行 存盘 文件名为 ex1 2 c 输出信息的 C 源程序 文件名为 ex1 2 c include stdio h void main printf Hello Everyone n printf Study hard n 输出结果为 n 的作用是 4 编辑 编译 运行下面程序并存盘 文件名为 ex1 3 c 计算圆面积的程序 文件名为 ex1 3 c include stdio h void main float r area printf r scanf f area 3 1415926 r r printf area f n area 第一次运行时输入 1 运行结果为 再次运行时输入 10 运行结果为 把语句 printf area f n area 修改为 printf area 0 1f f n r area 后 运行时输入 10 这时程序的运行结果为 第二次上机第二次上机 掌握基本数据类型在程序中的正确应用掌握基本数据类型在程序中的正确应用 实验目的 实验目的 1 熟悉 C 语言集成开发环境及程序编写 编译 运行 观察运行结果 2 掌握基本的调试技巧 缺少标点符号 函数名错误或不一致 3 熟悉 C 语言基本数据类型 int long unsigned int float double char 的输入 输出格式 d ld f lf c o x u 实验内容 实验内容 1 输入半径 求圆的面积 要求圆周率用符号常量表示 查错改错 1 圆周率的定义名与使用 名不一致 查错改错 2 面积的输出格式用 d 作业 1 程序如下 调试改正两处错误 运行后将文件保存为 ex2 1 c define pi 3 1415927 include stdio h main float area banjing printf please enter a data n scanf f area 2 p banjing banjing 圆周率的定义名 pi 与使用名 p 不一致 printf n the area of yuan is d n area 面积的输出格式 d 改为 f A 调试 语法错误如下 出错信息为 D vcfile ex1 ex cpp 7 error C2065 p undeclared identifier 中文意思为 符号 p 没有定义 错误原因及更正 圆周率的定义名 pi 与使用名 p 不一致 p 改为 pi 运行 B 观察及分析运行结果 逻辑错误 分析 半径为 3 时 圆的面积应为 pi 3 3 28 2743343 不能为负数 查错 先查面积变量 area 的输出格式 再往上逆推查其运算方法 最后查其定义 错误原因及更正 面积的输出格式 d 整数 改为 f 实数或单精度浮点数 2 调入 ex2 1 c 另存为 ex2 2 c 并做如下修改后 保存调试运行程序 观察系统出错信息 英文 并翻译成中文 注 每改一次 就调试一次 1 将语句 float area banjing 改为 floatarea banjing 出错信息为 中文意思为 错误原因及更正 2 将语句 printf please enter a data n 改为 printf please enter a data n 出错信息为 中文意思为 错误原因及更正 3 将语句 scanf f 改为 scan f 出错信息为 中文意思为 错误原因及更正 4 将语句 float area banjing 中英文标点符号 或 改为中文输入法后 再输入同 样标点 出错信息为 中文意思为 错误原因及更正 第三次上机第三次上机 运算符与表达式的使用运算符与表达式的使用 实验目的 实验目的 1 熟悉 C 语言集成开发环境和熟悉 C 语言程序结构 2 掌握一定的调试技巧 3 熟悉运算符与表达式的正确使用 实验内容 实验内容 1 程序填空 以下程序输入 3 个整数值 给 a b c 程序把 b 中的值给 a 把 c 中的值给 b 把 a 中的值 给 c 交换后输出 a b c 的值 例如输入 123 输出 a 2 b 3 c 1 include stdio h void main int a b c printf enter a b c scanf d d d a b b c printf a d b d c d n a b c 1 填空后 运行程序 结果如下 2 在程序输出语句后插入语句 getchar 根据运行结果 说明其作用 1 调试以下程序 有两处语法错误 请改正 写出运行结果并简要回答为什么 即了解程序的运行 过程 include stdio h main intx y z x 6 y 100 z x y printf x d y d z d n x y z 运行结果 z x y x printf x d y d z d n x y z 运行结果 第四次上机第四次上机 掌握顺序结构程序设计掌握顺序结构程序设计 实验目的 实验目的 1 熟悉 C 语言集成开发环境和熟悉 C 语言程序结构 2 掌握一定的调试技巧 3 熟悉运算符与表达式的正确使用 4 掌握语句的正确书写 学会编写顺序结构的程序 实验内容 实验内容 1 编写程序求解 已知半径 r 3 厘米 cm 求球的体积 v 源程序代码 上机调试后 源程序中需修改的对应部分 程序运行结果 2 以下叁个程序 请设计编写源代码 并上机调试得到正确结果 1 输入两个整数 求其和 差 积 商和余数 2 输入一个三位数 依次输出其个位数字 十位数字 百位数字 要求 1 确定所需的输入变量 输出变量 中间变量的个数及命名 并为其选取正确的数据类型 2 根据正确的逻辑顺序书写程序 变量先说明再赋值后使用 先输入再处理后输出 3 每次输出必须有提示信息 如 printf n x y f x y 其中 x y 是提示信息 题号 源程序代码 输入数据与运行结果 第五次上机第五次上机 掌握顺序结构与输入输出函数掌握顺序结构与输入输出函数 实验目的 实验目的 1 掌握顺序程序设计的一般方法 2 根据算法 有的是计算公式 确定所需的输入变量 输出变量 中间变量的个数及命名 并为其 选取正确的数据类型 有计算公式的由计算公式右边表达式值的类型确定 3 根据正确的逻辑顺序书写 审查 程序 变量先说明再赋值后使用 函数先定义 后说明 再 使用 4 每次输入 输出应有提示信息 如 printf n x y f x y 其中 x y 是提示信息 5 注意表达式的正确书写格式 6 掌握程序的一般调试方法 实验内容 实验内容 1 在调试的过程中改正如下程序的错误 注意 每编译一次只改正一个错误 同时思考错误提示信息中单引号中的内容与错误的关系 程序 用公式求三角形面积 s scsbsas 2 1 cba 程序代码 源程序中需修改的对应部分 main int a b c float s a 3 b 4 c 5 printf enter three datas n scanf d d d a b c area sqrt s a s b s c s s 1 2 a b c printf a d b d c d narea d a b c area 2 编程求三角形面积 C 的单位为度数 库函数中自变量单位为弧度数 已知 Cabssin 2 1 a 5 b 3 C 30o 注意 1 表达式的正确书写格式 2 程序的设计方法 3 检查 核实程序的顺序 的正确性 代码 运行结果 第六次上机第六次上机 分支结构程序 一 分支结构程序 一 实验目的 实验目的 1 熟悉输入输出格式的使用 2 掌握逻辑运算符的特殊运算规则 3 了解简单的分支结构程序设计 4 学会阅读程序的基本技巧 参考第七讲 分析程序运行过程 实验内容 实验内容 1 阅读下面程序 计算运行结果 然后上机验证 main int c d e float a b t a 3 6 b 3 2 if a b t a a b b t 思考该复合语句 的功能 printf n 5 2f 5 2f a b c 1 d 1 e c 注意运算符的优先级和运算规则 printf nc d d d e d c d e e d c pirntf nc d d d e d c d e 2 程序填空 输入 x 值 计算下面的函数值 并输出结果 113 12 x x x y 10 101 1 x x x 源程序如下 include stdio h void main double x int y scanf if x0 b 0 c 0 n scanf d d d if area sqrt s s a s b s c else printf nthree data a b c can t form a triangle n 2 编程求一元二次方程的根 2 ax bx c 0 根据不同的系数 a b c 有以下的几种情况 1 时 方程有两不等实根 x1 x2 2 a0 b 4ac 0 2 时 方程有两相等实根 x1 x2 2 a0 b 4ac 0 3 时 方程有两共轭虚根 x1 x2 2 a0 b 4ac 0 4 时 方程为 bx c 0 根为 x c b a 0 b0 5 时 方程无解a 0 b 0 c0 6 时 方程有无穷解 x 可为任意值 a 0 b 0 c0 源程序代码 动态测试 数据准备 根据前面分析 应准备 6 组数据 第一组数据 第二组数据 运行结果 运行结果 第三组数据 第四组数据 运行结果 运行结果 第五组数据 第六组数据 运行结果 运行结果 第八次上机第八次上机 循环结构程序设计 一 循环结构程序设计 一 实验目的 实验目的 1 掌握程序的基本设计方法 能分析具体问题的算法 输入输出 流程 2 掌握 while 循环的语义 语法和它的使用 能根据流程写程序 根据程序写流程 3 能正确阅读程序 根据问题说明把程序补充完整 实验内容 实验内容 1 填空 使程序完整 问题说明 输出所有水仙花数 水仙花数是三位三位自然数 其各位数字的立方和立方和等于该数 例 153 333 351 源程序 main I 100 While x I 100 y z I 10 if printf d n I I 运行结果 2 编程求解 问题 一个皮球从 50 米高处落下 每次反弹的高度为原高度的 2 3 求至少经过多少次反弹后 反弹的高度才小于 1 米 提示 先弄清皮球的运动路线 可设变量 下落高度 h1 反弹高度 h2 反弹次数 n 每次的反弹高度等于下次的下落高度 源程序代码 上机结果 反弹高度为原来的 1 4 时 运行结果 第九次上机第九次上机 循环结构程序设计 二 循环结构程序设计 二 实验目的 实验目的 1 掌握程序的基本设计方法 能分析具体问题的算法 输入输出 流程 2 掌握 for 循环的语义 语法和它的使用 能根据流程写程序 根据程序写流程 3 能正确阅读程序 了解程序的运行过程 根据问题说明把程序补充完整 实验内容 实验内容 1 已知以下程序是求某一分数序列的前 20 项的和 1 填空使程序完整 2 写出该分数序列的前 6 项 6 个分数 源程序 main int a b c I sum s a 3 b 2 s float a b sum 2 1 for I 2 I sum s c a b b a a c s float a b printf sum f sum 2 编程 求 8 要求 用 for 循环 从键盘上输入 n 的值 10 1 2 20 1nn nn 源程序代码 上机结果 第十次上机第十次上机 嵌套循环嵌套循环 实验目的 实验目的 1 掌握嵌套循环程序的基本设计方法 难度分解 化为单层循环 2 掌握 for 循环 while 循环的语义 语法和它的使用 能根据流程写程序 根据程序写流程 3 能正确阅读程序 了解程序的运行过程 根据问题说明把程序补充完整 实验内容 实验内容 1 程序填空 问题说明 求 100 到 1000 之间的所有素数之和 源程序 main int I j sum 0 for I 101 I 1000 j 2 while if I j 0 break j if sum I printf sum of primes of 100 1000 is d n 2 编程 求 Sn a aa aaa aa a 该项有 n 个 a 之值 其中 a 为一个数字 例如 2 22 222 2222 22222 此时 n 5 a 和 n 由键盘输入 源程序代码 上机结果 3 编程 输出 101 115 之间不能被 3 整除的数 要求 输入时每行输入 5 个数 输出时每行输出 5 个 使用 continue 语句 输入排列 输入排列 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 输出排列 输出排列 101 103 104 106 107 109 110 112 113 115 源程序代码 第十一次上机第十一次上机 数组 一 数组 一 实验目的 实验目的 1 掌握一维数组的定义 赋值 使用 2 能用一维数组这个新的数据结构简化原有程序 3 根据问题说明 能正确阅读程序 实验内容 实验内容 1 程序填空 求数列的前 20 项之和 2 1 3 2 5 3 8 5 13 8 21 13 源程序 main int N 20 int float s for I 1 I N I a I a I 1 b I 1 s 0 for I 0 I N I s a I b I printf sum f s 运行结果 N 的值改为 3 时 运行结果 2 编程 按下列数据的原来顺序和它的相反顺序输出下列各数 1 2 3 4 5 6 7 8 要求 要求 使用数 组 8 个数从键盘输入 注意 数组的定义 数组元素的个数 数组的两种赋值方式 数据类型的转换 源程序代码 上机结果 第十二次上机第十二次上机 数组 二 数组 二 实验目的 实验目的 1 熟练掌握一维数组 二维数组的正确使用 2 熟悉字符串数组的用法 3 能正确阅读程序 理解程序的含义 4 能根据问题说明 观察其隐含的规律 把程序补充完整 实验内容 实验内容 1 程序填空 按下列格式输出 6 行杨辉三角形 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 要求 先根据已有条件猜测空的内容 再运行程序 根据运行结果修改空的内容 直至符合要求 源程序 include stdio h main int y 7 7 n m for n 1 n 7 n y n n 1 1 第一列元素为 1 for n 3 n 7 n for m 2 m n 1 m y n m for n 1 n 7 n for m 1 m n m printf 4d y n m 2 编程 用冒泡法或选择法把一列数据排序后输出 23 145 65 73 12 74 91 5 要求 从键盘上输入这列数据 先输出原数据 依次输出每一轮排序后的数据 源程序代码 上机结果 3 难度题 一个班的学生的学号与成绩如下 请按成绩从高分到低分输出 学生的学号与对应的成 绩应同时输出 学号 1 2 3 4 5 6 7 8 9 10 11 成绩 40 63 81 80 98 72 91 65 70 68 79 提示 最好用选择法排序 增加一个数组放学号 排序交换位置时 同时交换学号数组学号数组与成绩数组成绩数组 的对应元素 注 在上题的右边作适当修改 第十三次上机第十三次上机 数组 三 数组 三 实验目的 实验目的 1 熟练掌握一维数组 二维数组的正确使用 2 熟悉字符串数组的用法 3 能正确阅读程序 理解程序的含义 4 能根据问题说明 观察其隐含的规律 把程序补充完整 5 能根据多次不同的输入与对应的输出结果 推算程序功能 实验内容 实验内容 1 程序填空 求给定字符串的字符个数 要求 不修改程序已写部分 在空缺部分把程序补充完 整 源程序 include stdio h main char s 40 int m 0 printf Enter a string n scanf s s while s m printf The string length d n m 2 阅读程序 要求 能根据多次不同的输入 多次修改字符串 S1 的初值 与对应的输出结果 参考源程序 推算 程序功能 include stdio h char s printf main char c f printf s n s squeeze s c printf s n s squeeze s c char s c int I j for I j 0 s I 0 I if s I c s j s I s j 0 问 1 字符串的初值 printf 改为 find a factor 时 程序输出结果 2 函数 squeeze 的主要功能是 第十四次上机第十四次上机 函数 一 函数 一 实验目的 实验目的 1 熟悉自定义函数定义的基本格式 说明格式 调用过程 2 能把一般的程序或程序的部分功能改写为自定义函数 实验内容 实验内容 1 用自定义函数形式改写以下源程序 功能是求两个数 num1 num2 的最大公约数 a 注意注意 该自定义函数应有二个形式参数 源程序 include stdio h main int a b num1 num2 temp printf enter two postive numbers n scanf d d if num1 num2 temp num1 num1 num2 num2 temp a num1 b num2 while b temp a b a b b temp printf 最大公约数 is d a 2 程序填空 求三个数的最大值 把下列程序补充完整 不能修改程序的其它部分 include stdio h main int a b c int max maxabc scanf d d d maxabc max a b c printf the largest number of d d and d is d a b c maxabc int max int a int b int c 自定义函数 函数名 f 功能是求两个数 num1 num2 的最大公约数 a int f if num1 3 第十五次上机第十五次上机 函数 二 函数 二 实验目的 实验目的 1 能正确理解和阅读带自定义函数的程序 2 进一步熟练掌握自定义函数的定义 说明和调用 3 能熟练使用定义函数编程 实验内容 实验内容 1 程序填空 求一个数组中各元素的最大元素并输出 源程序 include stdio h define N 6 main int a N I max int for I 0 I N I scanf d max printf nmax of the a N is d n max int maxvalue a m int int max m max a 0 for k 1 k m k if max a k 程序运行结果 2 用自定义函数编程 输入三角形的三边的边长 求其面积 面积计算公式 sqrt p p a p b p c p 为周长的一半 主函数应包含输入无效数据的情况 即 a b c 不能构成三角形的三边或它们有一个负数 运行结果 第十六次上机第十六次上机 函数 三 和预处理函数 三 和预处理 实验目的 实验目的 1 能熟练使用定义函数编程 理解函数的参数传递过程 2 能正确阅读带宏定义的程序 掌握宏定义的正确替换 3 掌握宏定义和带参数宏定义的简单使用 实验内容 实验内容 1 阅读程序 写出程序运行结果并分析原因 源程序 inc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论