0实验4 选择结构程序设计
一、实验目的
1.了解C语言表示逻辑量的方法,学会正确使用逻辑运算符和逻辑表达式。 2.熟练掌握if语句和switch语句。 3.结合程序掌握一些简单的算法。 4.学会程序调试的一般方法。 二、实验内容 1.程序调试示例
(1)改正下列程序中的错误,输入x,计算并输出下列分段函数f (x)的值(保留一位小数)。
?1(x?0)? (以10 和0为例)y?f(x)??x
?(x?0)?0 源程序(有错误的程序): #include
/*************found********************/
if(x!=0) { y=1/x }
/*************found********************/
else { y=0; }
printf(“f(%.2f)=%.1f\\n”,x,y); } 调试步骤:
①打开源程序,单击工具栏上的编译按钮
,出现的第1条错误是:
1
双击错误信息,箭头指向第一个“}”所在的行,错误信息指出在“}”前缺少分号。在y=1/x后补上分号。
②重新编译,出现新的错误提示:
双击错误信息,箭头指向“scanf(%lf”,x)”所在的行,错误原因是“x”前少了“&”,将之补上。重新编译并连接,都正确。
③选择菜单栏上的“Tools”——“Customize”命令,在“Customize”对话框中单击“Toolbars”选项卡,在其中勾选“Debug”显示调试工具条。
④单步调试程序。单击调试工具条中按钮
(Step Over),每次执行一行语句,编辑窗口的
箭头指向某一行,表示程序将要执行该行。
在上图的下半部分列出了变量窗口和观察窗口,在观察窗口中可以改变变量的值。 ⑤再单击
3次(若调试工具条未出现,则利用第三步将之调出),
程序执行到输入语句这一行,同时运行窗口显示:
表示程序将要执行该行。继续单击
按钮,在运行窗口中输入10,按回车键,则箭头指向if(x!=0)
这一行。此时,在变量窗口可以看到变量10.000000000000。 ⑥继续单击
按钮2次,箭头指向“else”这一行,在变量窗口可以看到变量y的值为
0.1000000000000。 ⑦继续单击⑧单击
铵钮2次,运行窗口显示运行结果,符合题目要求。
(Stop Debugging)按钮,程序调试结束。
2
(2)改正下列程序中的错误,输入参数a,b,c,求一元二次方程ax2+bx+c=0的根。 源程序:
#include
scanf(\
d=b*b-4*a*c; /*调试时设置断点*/ if(a==0) { if(b==0) { if(c==0)
printf(\参数都为零,方程无意义!\\n\ else
printf(\和b为0,c不为0,方程不成立\\n\ } else
printf(\ } else
{ if(d>=0) /*调试时设置断点*/ { printf(\ printf(\ } else
{ printf(\ printf(\ } /*调试时设置断点*/ } 调试断点的使用:
断点的作用是使程序执行到断点处暂停,观察当前变量或表达式的值。设置断点时,先将光标定位到要设置断点的位置,然后单击编译工具条的已设置的断点,需将光标移到要取消的断点处再单击 上述程序设置断点进行调试的步骤:
① 打开源程序,对程序进行编译和连接,没有出现错误信息。
3
按钮,则断点设置完毕。若要取消
按钮,该断点即取消。