四、实验结果:
1. 运行结果(或截图):
24 64 @
2. 运行结果(或截图):
d=3.000000,e=3.500000
d=3.000000,e=3.375000
3. 运行结果(或截图):
a=4,b=4,c=2,d=2,i=3,j=4,m=3,n=2
4. 运行结果(或截图):
a=-32
五、思考题:
1. 给变量命名应该注意哪些问题?
答:每个变量必须进行数据类型说明;
2. 程序2的运行结果中,d和e的值为什么不同?
答:d的赋值语句中,除法是两个整型数字的运算,其结果没有小数位;而e中对b进行了强
制转换为实型,所以其除法运算结果有小数位。
- 4 -
3. 程序3的运行结果中,i和j的值为什么不同?m和n的值为什么不同?//改为程序3
答:i(m)是通过后自增(后自减)实现的,而后自增(后自减)是先参与其他运算,后对变
量递增(递减);
而j(n)是通过前自增(前自减)实现的,其是先对变量递增(递减),后再参与其他运算。
4. 请分析表达式a+=a-=a*a+a的运算过程(写出运算步骤)。
答:先将a -(a*a+a)赋值给a,再将a+a 赋值给a 。
成绩 指导教师签名
- 5 -
实验三
实验项目名称:简单的输入输出及顺序程序设计 所使用的工具软件及环境:Visual C++ 6.0 一、实验目的:
1. 掌握整型、实型与字符型数据的正确输入方法(scanf函数的使用); 2. 掌握整型、实型与字符型数据的正确输出方法(printf函数的使用); 3. 掌握编写顺序程序的方法。 二、预习内容:
教材《C语言程序设计教程》第3章。 三、实验内容:
1. 编写C程序,按下列公式计算并输出S的值,其中a和b的值有键盘输入。
s?main() { int a,b; float s;
scanf(“%d,%d”,&a,&b); s=2.0*a*b/(a+b) /(a+b); printf(“s=%f\\n”,s); }
2ab 2(a?b)①输入并调试。
②将scanf函数改为scanf(“%d%d”,&a,&b);再编译,运行。 ③观察结果。
2. 在Visual C++ 6.0环境下输入并运行下面的程序,观察分析程序运行过程及结果。 #include
int a,b,sum;
printf(\请输入第一个整数:\ scanf(\
printf(\请输入第二个整数:\ scanf(\ sum=a+b;
printf(\ }
3. 设圆半径r=1.5,编写程序求圆周长、圆面积和圆球的体积。要求用scanf语句输入半径,输出时取小数点后两位。
- 6 -
四、实验结果: 1. 输入数据 4,5 输入修改后的数据 运行结果 4 5 s=0.493827 字符控制串中没有除说明符以外的其他字符,所以输入时可以通过空格分隔 4↙5↙ s=0.493827 字符控制串中没有除说明符以外的其他字符,所以输入时可以通过回车分隔 运行结果 s=0.493827 原因 字符控制串中有“,”,所以输入时必须有原因 “,”
2. 运行结果(或截图):
请输入第一个整数:1 请输入第二个整数:2 1+2=3
3. (1) 程序中用到的变量(类型)
单精度浮点数
(2) 算法(用伪代码描述或自然语言)
c = 2 * pi * r; s = pi * r * r; v = 4 * (pi * r * r * r)/3;
(3) 源程序清单
#include
- 7 -