实验三
(2009-9-24)
一、 实验名称:
运算符与表达式。
二、 实验目的:
(1) 掌握C语言中常用运算符的基本功能,以及优先级与结合性; (2) 正确使用运算符和数据实体构建表达式,并表达式的计算过程; (3) 进一步熟悉Visual C++6.0开发环境下调试程序的基本步骤。
三、 实验项目(必做题)
(1) 建立项目文件,运行下列程序,并记录程序执行的结果:
1 程序执行结果为: ○
x=9, y=8, z=5 d=9 e=8 x=9 y=9 2如果将程序中语句“x+=y+=z” 修改为“x-=y-=z;”则程序运行结果为: ○
x=3, y=-2, z=5 d=3 e=-2 x=3 y=-1 (2) 建立项目文件,运行下列程序,并记录程序执行的结果:
1 如果从键盘输入3,5给变量a和b,记录程序执行结果为: ○ c=8 d=12 2如果仅将程序中语句“c=(a++)+(b++);” 修改为“c=(a--)+(b--);”并从键盘输入3,5给变量a和b,则程序运行○
结果为: c=8 d=8 3如果仅将程序中语句“c=(++a)+(++b);” 修改为“c=(--a)+(--b);” 并从键盘输入3,5给变量a和b,则程序运○
行结果为: c=6
1
d=8
(3)
程序执行后的结果为: 8, 8, 8 8, 8, 8 8, 8, 8 7, 8, 8 分析:在!a&&b++&&c; 和a||--b||c--;语句中,从第一个子表达式即可确定整个逻辑表达式的值,所以后面的子表达式无需计算;a-8&&--b||c||b++;中的表达式相当于(a-8&&--b)||c||b++,同样由于子表达式(a-8&&--b)为0,而无需计算--b,接着c非零即为真,所以b++也无需计算;--a||b&&c||++b;首先计算—b,b的值为7,所以后面的表达式无需计算。
(4) 练习实验指导书P240实验内容和步骤中的项目(4),并做好记录。 (5) 练习实验指导书P240实验内容和步骤中的项目(5),并做好记录。 (6) 求下面表达式的值,然后建立项目文件进行编程验证:
1 如果x=2.5,a=7,y=4.7,求表达式:x+a%3*(int)(x+y)%2/4的值 ○ 表达式的值为:2.5
2 如果a=2,b=3,x=3.5,y=2.5,求表达式:(float)(a+b)/2+(int)x%(int)y的值 ○ 表达式的值为:3.5
(7) 建立项目文件,并在源文件中正确书写下列表达式,同时在屏幕上打印出表达式的运算结果。(其中,x,y是
浮点型变量,初值由键盘输入) 23 1 x+y○
x?y22 ○ 22x?y程序为: #include
void main() { float x, y; printf(\ scanf(\ printf(\ printf(\ }
当从键盘输入1.0 2.0时,程序执行的结果为: enter two floating numbers: 1.0 2.0 9.00 -0.60
2
3