c语言,程序设计实验报告
c语言,程序设计实验报告
C语言程序设计实验报告——实验3 最简单的C程序设计
凯里学院 C语言程序设计实验报告
××××× 专业×× 年级×× 班,学号×××××× 姓名××成绩 合作者 实验日期 年月 日 指导教师 评阅日期 年月 日
实验三 最简单的C程序设计
一、实验目的:
1、掌握C语言的数据类型和变量的声明。
2、掌握不同类型数据之间赋值的规律。
3、掌握C语言的运算符和表达式的使用。
4、熟悉C程序的编辑、编译、连接和运行的过程。
二、实验内容:
装
订
线
装
订
线 ①输人程序: #includestdio.h void main() { int a, b; float d,e; char c1,c2; double f, g; long m, n; unsigned int p,q; a=61;b=62; c1='a';c2='b'; d=3.56;e=-6.87; f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000; printf(a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n,a,b,c1,c2,d,e); printf(f=%15.6f,g=%15.6f\nm=%ld,n=%ld\np=%u,q=%u\n,f,g,m,n,p,q); } ②运行此程序并分析结果 (2)按习题4. 8要求编写程序 题目为: 设圆半径r=l. 5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。 用scanf输人数据,输出计算结果口输出时要有文字说明,取小数点后两位数字。
程序:
三、实验步骤:
①输人程序:
#includestdio.h
装
订
线 void main() { int a, b; float d,e; char c1,c2; double f, g; long m, n; unsigned int p,q; a=61;b=62; c1='a';c2='b'; d=3.56;e=-6.87; f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000; printf(a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n,a,b,c1,c2,d,e); printf(f=%15.6f,g=%15.6f\nm=%ld,n=%ld\np=%u,q=%u\n,f,g,m,n,p,q); }
②运行此程序并分析结果。
预计结果:
a=61,b=62
c1=a,c2=b
d=``3.56,e=`-6.87
f=````3157.890121,g=```````0.123456
m=50000,n=-60000
p=32768,q=40000(`代表空格)
结果:
g的输出看来是四舍五入了。
③在此基础上,将程序第9~14行改为:
a=61;b=62;
c1=a;c2=b;
f=3157.890121;g=0.123456789;
d=f;e=g;
p=a=m=50000;q=b=n=-60000;
运行程序,分析结果。
装订线
p=a=m=50000;q=b=n=-60000;这两条语句将p、a、m的值和q、b、n的值都重新赋了相应的
新值。除m、n外都是整型、无符号整型或字符型,因此输出会按数据类型强制截取,因此得到的值会不尽相同,但可以从理论上做出推测,但由于编译系统的不同,真正得到的结果也可能不尽相同。
④改用scanf函数输人数据而不用赋值语句,scanf函数如下:
scanf(%d,%d,%c,%c,%f,%f,%lf,%lf,%ld,%ld,%u,%u,&a,&b,&c1,&c2,&d,&e,&f,&g,&m,&n,%p,%q);
输入的数据如下:
分析运行结果。
(说明:lf和ld格式符分别用于输人double型和long型数据)
装
订
线 ⑤在④的基础上将printf语句改为:
printf(a=%d,b=%d\nc1=%c,c2=%c\nd=%15.6f,e=%15.6f\n,a,b,c1,c2,d,e);
printf(f=%f,g=%f\nm=%ld,n=%ld\np=%u,q=%u\n,f,g,m,n,p,q);
运行程序:
⑥将p、q改用%o格式符输出。
⑦将scanf函数中的%1f和%ld改为%f和%d,运行程序并观察分析结果。
装
订
线 出现错误,提示为:浮点错误:超出范围。程序异常中止。 (2)按习题4. 8