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(\ } e