天津理工大学-c语言上机报告3
PAGE
PAGE 3
实验三
(2009
实验名称:
运算符与表达式。
实验目的:
掌握C语言中常用运算符的基本功能,以及优先级与结合性;
正确使用运算符和数据实体构建表达式,并表达式的计算过程;
进一步熟悉Visual C++6.0开发环境下调试程序的基本步骤。
实验项目(必做题)
建立项目文件,运行下列程序,并记录程序执行的结果:
eq \o\ac(○,1) 程序执行结果为:
x=9, y=8, z=5
d=9
e=8
x=9
y=9
eq \o\ac(○,2)如果将程序中语句“x+=y+=z” 修改为“x-=y-=z;”则程序运行结果为:
x=3, y=-2, z=5
d=3
e=-2
x=3
y=-1
建立项目文件,运行下列程序,并记录程序执行的结果:
eq \o\ac(○,1) 如果从键盘输入3,5给变量a和b,记录程序执行结果为:
c=8
d=12
eq \o\ac(○,2)如果仅将程序中语句“c=(a++)+(b++);” 修改为“c=(a--)+(b--);”并从键盘输入3,5给变量a和b,则程序运行结果为:
c=8
d=8
eq \o\ac(○,3)如果仅将程序中语句“c=(++a)+(++b);” 修改为“c=(--a)+(--b);” 并从键盘输入3,5给变量a和b,则程序运行结果为:
c=6
d=8
程序执行后的结果为:
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,所以后面的表达式无需计算。
练习实验指导书P240实验内容和步骤中的项目(4),并做好记录。
练习实验指导书P240实验内容和步骤中的项目(5),并做好记录。
求下面表达式的值,然后建立项目文件进行编程验证:
eq \o\ac(○,1) 如果x=2.5,a=7,y=4.7,求表达式:x+a%3*(int)(x+y)%2/4的值
表达式的值为:2.5
eq \o\ac(○,2) 如果a=2,b=3,x=3.5,y=2.5,求表达式:(float)(a+b)/2+(int)x%(int)y的值
表达式的值为:3.5
建立项目文件,并在源文件中正确书写下列表达式,同时在屏幕上打印出表达式的运算结果。(其中,x,y是浮点型变量,初值由键盘输入)
eq \o\ac(○,1) x2+y3
eq \o\ac(○,2)
程序为:
#include
void main()
{
float x, y;
printf("enter two floating numbers: ");
scanf("%f%f", &x, &y);
printf("%6.2f\n", x*x+y*y*y);
printf("%6.2f\n", (x-y*y)/(x*x+y*y));
}
当从键盘输入1.0 2.0时,程序执行的结果为:
enter two floating numbers: 1.0 2.0
9.00
-0.60