《高级语言程序设计》实验报告
班级: 学号: 姓名: 成绩:
实验1熟悉Visual C++6.0环境及运行C程序
一、实验目的
1.掌握在Visual C++6.0环境下C程序的建立、编辑、编译和执行过程。 2.掌握C程序的最基本框架结构,完成简单程序的编制与运行。 3.了解基本输入输出函数scanf()、printf ()的格式及使用方法。
4.掌握发现语法错误、逻辑错误的方法以及排除简单错误的操作技能。
二、实验内容
1.下列程序的功能是:从键盘输入两个数a和b,求它们的平方和,并在屏幕上输出。输入该C程序,编译并运行之,记下屏幕的输出结果,以文件名sy1_1.c保存。
#include
int a,b,sum; /*定义整型变量a、b、sum */ printf(\ /*输出提示信息*/
scanf(\ /*从键盘输入两个整数分别赋予a和b*/ sum=a*a+b*b; /*赋值语句,把a2+b2的结果赋给变量sum*/ printf(\ /*输出语句*/ } 该程序的运行结果: Please Input a,b 2 4 2*2+4*4=20
2. 改错题 在程序中画出错误的语句,将修改后的语句完整地写在该语句的右边。 (1)下列程序的功能为:计算x*y的值并将结果输出。试纠正程序中存在的错误,以实现其功能。程序以文件名sy1_2.c保存。
#include
main main()
{ int x=2;y=3;a int x=2;y=3;a;
1
A=x*y a=x*y;
print ('a=%d\ printf (\a=%d\a); printf(\; } 该程序的运行结果: a=6
(2)下程序的功能为:求两数中的较大数据并输出。纠正程序中存在的错误,以实现其功能。程序以文件名sy1_3.c保存。
#include
viod main() void main() {
int a ,b , max;
Scanf(“%d,%d”,&a,&b); scanf(“%d,%d”,&a,&b); Max=a; max=a;
If (max
该程序的运行结果:
5,3 max=5 3.程序填空题
(1)从键盘输入两个整数,输出这两个整数的和。根据注释信息填写完整程序,以实现其功能。以文件名sy1_4.c保存。
#include
int x,y,total; /* 定义整型变量x,y,total*/ printf(\ /* 输出提示信息 */
scanf(“%d%d”,&x,&y); /* 由键盘输入两个数分别赋予x和y*/ total=x+y; /* 赋值语句 */
printf(\ /* 输出两个整数的和 */ }
该程序的运行结果:
Please input x,y !2 4
2+4=6
2
(2)从键盘输入两个整数,输出这两个整数的差。根据注释信息填写完整程序,以实现其功能。程序以文件名sy1_5.c保存。 该程序的运行结果: #include
Input a,b please !20 17 main()
20-17=3 {
int a,b,m; printf(\
scanf(\
_m=a-b;___ /* 赋值语句,将a和b的差值赋给m */
_printf(“%d-%d=%d\\n”,a,b,m);_ /* 输出a 和b差的结果值后换行 */ }
4.编程题 (1)编程序,运行后输出如下信息:“Better City,Better Life!”。程序以文件名sy1_6.c保存。
#include
printf(\ }
(2)编程序,从键盘输入3个整数,输出它们的平方和。程序以文件名sy1_7.c保存。 #include
int a,b,c,sum;
printf(\ scanf(\ sum=a*a+b*b+c*c;
printf(\}
该程序的运行结果: Please Input a,b,c 2,3,4 2*2+3*3+4*4=29 3
实验2 数据类型、运算符和表达式
一、实验目的
1.理解C语言中各种数据类型的意义,掌握各种数据类型的定义方法。 2.掌握C语言常量、变量的定义与使用。 3.掌握C语言数据类型及运算符的使用规则。
二、实验内容
1.改错题 在程序中画出错误的语句,将修改后的语句完整地写在该语句的右边。 (1)下列程序的功能为:已知圆锥半径r和高h,计算圆锥体积v。纠正程序中存在的错误,以实现其功能。程序以文件名sy2_1.c保存。计算圆锥体积的公式为:
#include stdio.h #include
{ float r=10,h=5; float r=10,h=5,v;
v=1/3*3.14159*r^2*h; v=1.0/3*3.14159*r*r*h; printf(\ printf(\; }
该程序的运行结果:
v=523.598333
(2)下列程序的功能为:通过键盘输入两个整数分别存放在变量x、y中,不借用第3个变量实现变量x、y互换值。纠正程序中存在的错误,以实现其功能。程序以文件名sy2_2.c保存。
#include
printf(\最终状态下的x:%d y: %d/n\}
该程序的运行结果: 请输入两个整数 2 5 4 初始状态下的x:2 y: 5
最终状态下的x:5 y: 2
2.程序填空题
(1) 计算当x=4时,公式y?1?x3x2?4x?10×2x2 的值。补充完善程序,以实现
其功能。程序以文件名sy2_3.c保存。
#include
float x=4.0,y;
y=(1+x*x*x)/(x*x+4*sqrt(x)+10)*2*x*x; printf(\}
该程序的运行结果: 61.176471
(2) 下列程序的功能为:从键盘输入3个整数分别存入变量a、b、c,然后,将变量a的值存入变量b,将变量b的值存入变量c,将变量c的值存入变量a,输出经过转存后变量a、b、c的值。(提示:使用中间变量)补充完善程序,以实现其功能。程序以文件名sy2_4.c保存。
#include
该程序的运行结果: main ()
Please input a,b,c:1 2 3 {
a=3 int a,b,c, t ;
b=1 printf(\
c=2 scanf(\ t=a ; a=c ; c=b ; b=t ; printf(\}
3.编程题
(1)从键盘输入3个大写英文字母,把它们转换成小写字母后输出。程序以文件名sy2_5.c保存。
该程序的运行结果: #include
ABC main()
abc 5