当前位置:文档之家› C语言程序设计实验报告(实验1-12)

C语言程序设计实验报告(实验1-12)

文档从网络中收集,已重新整理排版.word版本可编辑.欢迎下载支持.《C语言程序设计》实验报告2013~2014学年第二学期班级姓名学号指导教师实验一实验项目名称:C程序的运行环境和运行C程序的方法所使用的工具软件及环境:Visual C++ 6.0一、实验目的:1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运行一个C程序;2.通过运行简单的C程序,初步了解C源程序的特点。

二、预习内容:教材《C语言程序设计教程》第1章。

三、实验内容:1. 在Visual C++ 6.0环境下输入并运行下面的程序:#include <stdio.h>int main( ){printf("This is a C program.\n");return 0;}2. 在Visual C++ 6.0环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序无语法错误,然后运行程序,并观察分析运行结果。

#include <stdio.h>int main( ){int a,b,suma=3;b=4;sun=a+b;print(“%d+%d=%d\n”,a,b,sum);return 0;}四、实验结果:1. 运行结果(或截图):This is a C program.Press any key to continue2. (1) 改正后的源程序:#include <stdio.h>int main( ){int a,b,sum;a=3;b=4;sum=a+b;printf("%d+%d=%d\n",a,b,sum);return 0;}(2) 运行结果(或截图):3+4=7五、思考题:1. 一个C程序上机的步骤有哪些?答:上级输入与编辑源程序—对原程序进行编译–与库函数链接–运行可执行的目标程序。

2. 组成C程序的基本单位是函数,一个函数包括哪几个部分?答:一个函数包括两部分:分别为函数头或函数首部和函数体。

成绩指导教师签名实验二实验项目名称:数据类型、运算符和表达式所使用的工具软件及环境:Visual C++ 6.0一、实验目的:1.掌握整型、实型与字符型这三种基本类型的概念;2.掌握常量及变量的使用方法;3. 掌握基本算术运算符及其表达式的使用方法;4. 掌握++、--运算符、赋值运算符及其表达式的使用方法。

二、预习内容:教材《C语言程序设计教程》第2章。

三、实验内容:1. 在Visual C++ 6.0环境下输入下面的程序,编译、连接、调试该程序。

main( ){char m,n;m=280;n=320;printf(“%d\t%d\n”,m,n);printf(“%c\t%c\n”,m,n);}2. 在Visual C++ 6.0环境下输入并运行下面的程序,观察分析运行结果。

#include <stdio.h>int main( ){int a=3,b=4,c=8;float d,e;d=a+b/c;e=a+(float)b/c;//请将此处d改为bprintf("d=%f,e=%f\n",d,e);}3. 在Visual C++ 6.0环境下输入并运行下面的程序,观察分析运行结果。

#include <stdio.h>main( ){int a,b,c,d,i,j,m,n;a=b=c=d=3;i=a++;j=++b;m=c--;n=--d;printf("a=%d,b=%d,c=%d,d=%d,i=%d,j=%d,m=%d,n=%d\n",a,b,c,d,i,j,m,n);}4. 在Visual C++ 6.0环境下输入并运行下面的程序,观察分析运行结果。

#include <stdio.h>main( ){int a=4;a+=a-=a*a+a;printf("a=%d\n",a);}四、实验结果:1. 运行结果(或截图):24 64@2. 运行结果(或截图):d=3.000000,e=3.500000d=3.000000,e=3.3750003. 运行结果(或截图):a=4,b=4,c=2,d=2,i=3,j=4,m=3,n=24. 运行结果(或截图):a=-32五、思考题:1. 给变量命名应该注意哪些问题?答:每个变量必须进行数据类型说明;2. 程序2的运行结果中,d和e的值为什么不同?答:d的赋值语句中,除法是两个整型数字的运算,其结果没有小数位;而e中对b进行了强制转换为实型,所以其除法运算结果有小数位。

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 。

成绩指导教师签名实验三实验项目名称:简单的输入输出及顺序程序设计所使用的工具软件及环境:Visual C++ 6.0 一、实验目的:1. 掌握整型、实型与字符型数据的正确输入方法(scanf 函数的使用);2. 掌握整型、实型与字符型数据的正确输出方法(printf 函数的使用);3. 掌握编写顺序程序的方法。

二、预习内容:教材《C 语言程序设计教程》第3章。

三、实验内容:1. 编写C 程序,按下列公式计算并输出S 的值,其中a 和b 的值有键盘输入。

2)(2b a abs +=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); }①输入并调试。

②将scanf 函数改为scanf(“%d%d ”,&a,&b);再编译,运行。

③观察结果。

2. 在Visual C++ 6.0环境下输入并运行下面的程序,观察分析程序运行过程及结果。

#include <stdio.h> int main( ) {int a,b,sum;printf("请输入第一个整数:"); scanf("%d",&a);printf("请输入第二个整数:"); scanf("%d",&b); sum=a+b;printf("%d+%d=%d\n",a,b,sum); }3. 设圆半径r=1.5,编写程序求圆周长、圆面积和圆球的体积。

要求用scanf 语句输入半径,输出时取小数点后两位。

四、实验结果:2. 运行结果(或截图):请输入第一个整数:1请输入第二个整数:21+2=33. (1) 程序中用到的变量(类型)单精度浮点数(2) 算法(用伪代码描述或自然语言)c = 2 * pi * r;s = pi * r * r;v = 4 * (pi * r * r * r)/3;(3) 源程序清单#include <stdio.h>int main( )# define pi 3.14{float r, c, s, v;printf("请输入圆的半径:");scanf("%f", &r);c = 2 * pi * r;s = pi * r * r;v = 4 * (pi * r * r * r)/3.0;printf("c = %.2f,s = %.2f,v = %.2f\n", c, s, v);}(4) 运行结果(或截图)请输入圆的半径:1.5c = 9.42,s = 7.07,v = 14.13五、思考题:scanf(“%d,%d”,&a,&b)与scanf(“%d%d”,&a,&b)输入数据的方式有什么不同?从两种输入方式的对比中你得到什么启发?答:第一种输入方式用户必须以“,”分隔,而第二者可用空格、回车分隔,用户在不知情的情况下,很难知道用“,”分隔输入的数据。

所以编程人员可以在scanf()语句前用printf()语句进行注释,让用户知道用什么来分隔输入的数据。

成绩指导教师签名实验四实验项目名称:选择结构程序设计所使用的工具软件及环境:Visual C++ 6.0 一、实验目的:1. 正确使用关系运算符和关系表达式;2. 正确使用逻辑运算符和逻辑表达式;3. 熟练使用if 语句实现选择结构程序;2. 熟练使用switch 语句实现多分支选择结构程序。

二、预习内容:教材《C 语言程序设计教程》第4章。

三、实验内容:1. 下面程序的功能是:输入学生成绩,若成绩在90分以上,输出“Excellent!”;若成绩在60—89分之间,输出“Pass!”;若成绩在60分以下,输出“Fail!”。

请将程序补充完整,并上机运行程序。

#include <stdio.h> int main( ) {int score ;printf("请输入分数(0--100):"); scanf("%d ", &score);if(score>100 || score<0) printf("Input Error!\n ");else if( score>=90 ) printf("Excellent!\n "); else if( score>=60 ) printf("Pass!\n "); else printf("Fail!\n "); }运行该程序4次,分别输入4个不同的数据,对应4种不同的情况,记录运行结果:2. 有如下分段函数:⎪⎩⎪⎨⎧≥<≤<--=10101111312x x x x x xy请输入x 的值,求解对应的y 值。

3. 给出一个百分制成绩,要求输出成绩等级’A ’、 ’B ’、 ’C ’、 ’D ’、 ’E ’。

90-100为’A’,80-89为’B’,70-79为’C’,60-69为’D’,60分以下为’E’。

用switch语句写。

四、程序中所用的变量及其类型:2.变量:x、y;数据类型:都为单精度浮点数3.变量:score数据类型:整型五、算法(用伪代码或自然语言描述):2.if ( x>=10 )printf(" y = %f\n", 3*x-11);else if ( x>=1 )printf(" y = %f\n", 2*x-1);elseprintf(" y = %f\n", x);3.switch (score/10){case 10:printf("A\n");break;case 9:printf("A\n");break;case 8:printf("B\n");break;case 7:printf("C\n");break;case 6:printf("D\n");break;default:printf("E\n");}六、源程序清单:2.# include <stdio.h>int main (void){float x, y;printf("请输入一个x:");scanf("%f", &x);if ( x>=10 )printf(" y = %f\n", 3*x-11);else if ( x>=1 )printf(" y = %f\n", 2*x-1);elseprintf(" y = %f\n", x);return 0;}3.# include <stdio.h>int main (void){int score;printf("请输入一个成绩:");scanf("%d", &score);switch (score/10){case 10:printf("A\n");break;case 9:printf("A\n");break;case 8:printf("B\n");break;case 7:printf("C\n");break;case 6:printf("D\n");break;default:printf("E\n");}return 0;}七、实验结果:2. 运行结果(执行程序3次,分别输入不同的3个数,对应3种不同的情况):3. 运行结果(执行程序5次,分别输入5组不同的数据,对应5种不同的情况):成绩指导教师签名实验五实验项目名称:简单循环程序设计所使用的工具软件及环境:Visual C++ 6.0一、实验目的:1. 掌握循环程序的基本结构;2. 熟练掌握while、do—while及for语句,并会用来编写循环结构程序。

相关主题