实验4选择结构程序设计..doc
文本预览下载声明
实验四 选择结构程序设计(4学时)
实验前必须做的操作——新建文件夹:
首先在各自对应的计算机ncre(k:)盘上对应座位号文件夹内新建一个文件夹,文件夹的名字为“班级+学号的后两位+姓名”,如座位号为K02,航海1111班、学号后两位是02的、姓名为“张强”的同学,则其对应的文件夹名字是:航海111102张强。然后在刚才建好的文件夹里面再建立一个文件夹,文件夹为“实验4”。
【实验目的】
理解C语言表示逻辑量的方法(以0代表“假”,以非0代表“真”)。
进一步巩固printf()和scanf()函数的使用方法。
学会正确使用关系运算符和关系表达式、逻辑运算符和逻辑表达式。
掌握if语句三种形式的用法。
掌握switch、break语句的用法。
熟悉选择结构程序段中语句的执行过程。
学会设计分支结构的程序,结合程序掌握一些基本的算法。
巩固利用VC++对C程序的查错方法,进一步提高修改程序错误的能力。
学习跟踪调试程序,掌握简单的单步调试方法。
【实验内容】
[实验任务一]:程序的跟踪调试和变量值的监视练习(可不上交、但必须操作、理解,掌握其方法)
程序跟踪调试实例4-1:程序跟踪调试和变量值的监视示例(请仔细按以下各步骤进行操作):
输入x,计算并输出下列分段函数 f(x) 的值(保留1位小数)。(需要存盘)
源程序(有错误的程序)
运行结果(改正后程序的运行结果)
10.0
f(10.00) = 0.1
【操作步骤】:
(1)输入源程序,并以error4_1.c文件名最终保存在实验4文件夹里,然后执行“编译/Build”—“编译/Compile”,出现第一个编译错误是:
双击该出错信息,箭头指向else所在行,出错信息指出在else前缺少分号。在y = 1 / x后面补上分号后,重新编译,新出现的第一个出错信息(警告信息):
双击该错误信息,箭头指向scanf(%f, x);所在行,出错原因是x的前面少了。在x前面补上后,重新编译并连接,均正确。
(2)执行“工具”—“定制”,选择“调试”(如图4.1所示),出现调试工具栏(如图4.2所示),然后关闭“定制”对话框。
图4.1 选择工具栏
图4.2 调试工具栏
(3)调试开始,单击调试工具栏中的单步执行(Step Over(F10)),每次执行一行(如图4.3所示),编辑窗口中的箭头指向行表示程序将要运行该行。图4.3中列出了变量窗口(Variables Window) 和观察窗口(Watch Window),在Watch窗口中还可以改变变量的值。
图4.3 程序调试开始
(4)鼠标单击三次,程序执行到输入这一行(如图4.4所示),同时运行窗口(如图4.5所示)显示提示符“input x:”(注意:此时将要执行但还没有执行scanf(“%f”, x);语句),继续单击,就可以在运行窗口输入x的值10(如图4.6所示),按回车键Enter后,箭头指向了“if(x!=0)”这一行(如图4.7所示),在变量窗口可以看到变量x的值是10.0000,变量x的地址(x)是0x0012ff7c。
图4.4 程序单步调试
图4.5 运行窗口
图4.6 在运行窗口输入变量x的值10
图4.7 程序单步调试,显示变量x的值和变量x的地址
(5)继续单击二次,箭头指向了“else”这一行(如图4.8所示),在变量窗口可以看到变量y的值是0.100000。
图4.8 程序单步调试,显示变量y的值
(6)继续单击二次(如图4.9所示),运行窗口显示运行结果(如图4.10所示),符合题目的要求。
图4.9 程序单步调试到最后一行
图4.10 在运行窗口显示调试后的最后结果
(7)单击终止调试按钮(Stop Debugging(Shaft+F5)),程序调试结束。
程序跟踪调试实例4-2:单步跟踪下面的程序,每执行完一条语句就观察各变量的值。将程序以debug4_1.c文件名最终保存在实验4文件夹里。(需要存盘)
程序跟踪调试实例4-3:单步跟踪下面的程序,每执行完一条语句就观察各变量的值,调试完后分析程序的执行过程及功能。将程序以debug4_2.c文件名最终保存在实验4文件夹里。(需要存盘)
?(1)先直接编译、连接、运行程序,若输入123,则输出什么?输入987、702呢?你能根据输出分析出程序的功能吗?
?(2)知道程序的功能后,请分析x1、x2、x3代表什么?为什么?通过单步跟踪程序来找出x1、x2、x3的值,是否可以分析出它们代表什么?如何利用运算符“/”和“%”来求整数各位上的数字?
程序跟踪调试实例4-4:)以下程序实现:判断用户输入的数是奇数还是偶数,并输出相应的信息。通过跟踪程序、分析程序是如何完成
显示全部