桂林电子科技大学C语言程序设计习题答案周信东实验2顺序结构与逻辑运算
成绩:良 评语:继续努力. 批改时间:2013-11-16 10:51:55 批改老师:实验 2 顺序结构与逻辑运算学号: 姓名: 实验日期:2013-10-301. 实验目的和要求(1)掌握数据输入/输出函数的使用,能正确使用各种格式转换符。(2)熟悉顺序结构程序中语句的执行过程,并学会基本调试程序方法。(3)能够正确使用逻辑运算符和逻辑表达式。(4)学会运用逻辑表达式或关系表达式等表示条件。(5)熟练掌握 if 语句和 switch 语句,掌握条件表达式构成的选择结构。(6)熟练掌握跟踪调试程序,针对具体数据组织输入测试数据,观察程序运行能否得到预期的输出结果。(7)学会编写简单程序。2. 实验内容:实验指导书中的实验三和实验四3. 实验步骤及结果实验三部分:3-1-1 该程序正确的源程序代码(或窗口截图):程序运行结果画面如下:3-1-2 该程序正确的源程序代码(或窗口截图):程序运行结果画面如下:3-2-1 该程序完整的源程序代码(或窗口截图):程序运行结果画面如下:3-2-2 该程序完整的源程序代码(或窗口截图):程序运行结果画面如下:3-3 注意:这道程序我们不按书中提示进行,而在 VC 环境下进行调试。语法错误和逻辑错误的区别何在?语法错误是指违背了程序的语法规则,比如增添了某个符号,或者少了头文件,且无法通过编译器的编译,更无法运行。逻辑错误是指在语法正确的前提下算法上的错误,能够运行,但结果往往不对,且很难发现。如何启动单步调试?单击菜单栏“组建”下的“开始调试” ,单击“STEP INTO”,也可以按快捷键 F11,使每条语句单独执行。要使程序运行到“ss=(k…”这一行暂停下来,该如何操作?怎样终止调试状态(程序复位)?单击调试菜单中的“stept over”或按快捷键 F10。单步调试状态下,向下运行一条语句的操作方法(分两种情况回答,第一种,跟踪到自定义函数内部,第 2 种,不跟踪到自定义函数内部):1. 单击调试菜单中的 Step into 进入到自定义函数内部。2. 单击调试菜单中的 step over 不跟踪到自定义函数内部。在本题中,假设要在运行第 2 条语句(即 scanf 语句后) ,要马上观察 i,j,k,ss,m,n的变量的值,操作方法:单击调试菜单中的 Step into,运行到 scanf 语句,在屏幕上打入任意的整形 I,j。请把观察这些变量时的画面粘贴到下面:通过这道题单步调试,你对 i++和++i 及 i—和—i 应该有了更直观的理解,他们的区别在于:i++(i--)是 i 的值加(减)1;而表达式的值仍为 i,++i(--i)是 i 的值加(减)1,再将 i加(减)1 的值作为表达式的值。3-4 请回答书中问题问题(1)应定义为字符型;问题(2)利用转义字符输入,即 c1=’\%d’,输出时无论用 PRINTF 或 scanf 皆可。问题(3)否,只能在 ASCII 码值的范围(000——127)内转换。程序运行结果画面如下:3-5 该程序的源程序代码(或窗口截图):运行结果画面:3-7 该程序的源称许代码(或窗口截图):或运行结果画面:32实验四 逻辑运算和判断选取控制4-1-a 该程序正确的源程序代码(或窗口截图):因为正整数 a*a+b*b 不可能有等于 3 的情况,故调用用 defaul 来完成不满足的情况。运行结果画面:4-1-b 该程序正确的源程序代码(或窗口截图):因为使用 BREAK 语句故可不用定义 Y,输出的结果也一样。下题同。运行结果画面:4-1-c 该程序正确的源程序代码(或窗口截图):运行结果画面:4-2-1 该程序完整的源程序代码(或窗口截图):运行结果画面:4-2-2 该程序完整的源程序代码(或窗口截图):运行结果画面:4-3 该程序完整的源程序代码(或窗口截图):运行结果画面:4-4 4-3 该程序完整的源程序代码(或窗口截图):运行结果画面:4-5 该程序的源程序代码(或窗口截图):运行结果画面:*4-6 该程序的源程序代码(或窗口截图):运行结果画面:4 实验小结通过本次实验,我对分支结构有了更加充分的认识,对 if 和 switch 两种语句的运用更加熟练。亲自动手操作,比对理论和各种符号的死记硬背强上百倍!记忆也更加深刻。在实验过程中,各种错漏在所难免,但经过耐心地调试,有一种收获成功的喜悦之情。在完成作业的同时,由于对知识的理解不够深刻,感觉作业很难,这将在以后的学习中不断完善。