《C语言程序设计》实验报告实验

  • 格式:docx
  • 大小:38.37 KB
  • 文档页数:33

下载文档原格式

  / 33
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include <stdio.h>
int main( )
{
int a,b,sum
a=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 continue
教材《C语言程序设计教程》第4章。
三、实验内容:
1. 下面程序的功能是:输入学生成绩,若成绩在90分以上,输出“Excellent!”;若成绩在60—89分之间,输出“Pass!”;若成绩在60分以下,输出“Fail!”。请将程序补充完整,并上机运行程序。
#include <stdio.h>
int main( )
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);
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种不同的情况):
成绩指导教师签名
实验三
实验项目名称:简单的输入输出及顺序程序设计
所使用的工具软件及环境:Visual C++ 6.0
一、实验目的:
1. 掌握整型、实型与字符型数据的正确输入方法(scanf函数的使用);
2. 掌握整型、实型与字符型数据的正确输出方法(printf函数的使用);
3. 掌握编写顺序程序的方法。
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;
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) 改正后的源程序:
#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程序上机的步骤有哪些?
二、预习内容:
教材《C语言程序设计教程》第3章。
三、实验内容:
1. 编写C程序,按下列公式计算并输出S的值,其中a和b的值有键盘输入。
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);Baidu Nhomakorabea
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 )
elseprintf("Fail!\n");
}
运行该程序4次,分别输入4个不同的数据,对应4种不同的情况,记录运行结果:
输入数据
20
61
99
111
运行结果
Fail!
Pass!
Excellent!
Input Error!
2.有如下分段函数:
请输入x的值,求解对应的y值。
3. 给出一个百分制成绩,要求输出成绩等级’A’、’B’、’C’、’D’、’E’。90-100为’A’,80-89为’B’,70-79为’C’,60-69为’D’,60分以下为’E’。用switch语句写。
二、预习内容:
教材《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环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序无语法错误,然后运行程序,并观察分析运行结果。
成绩指导教师签名
实验四
实验项目名称:选择结构程序设计
所使用的工具软件及环境:Visual C++ 6.0
一、实验目的:
1. 正确使用关系运算符和关系表达式;
2. 正确使用逻辑运算符和逻辑表达式;
3. 熟练使用if语句实现选择结构程序;
2. 熟练使用switch语句实现多分支选择结构程序。
二、预习内容:
《C语言程序设计》
实验报告
2013~2014学年第二学期
班级
姓名
学号
指导教师
实验一
实验项目名称:C程序的运行环境和运行C程序的方法
所使用的工具软件及环境:Visual C++ 6.0
一、实验目的:
1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运行一个C程序;
2.通过运行简单的C程序,初步了解C源程序的特点。
main( )
{
int a=4;
a+=a-=a*a+a;
printf("a=%d\n",a);
}
四、实验结果:
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
float d,e;
d=a+b/c;
e=a+(float)b/c;//请将此处d改为b
printf("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;
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 <stdio.h>
4. 运行结果(或截图):
a=-32
五、思考题:
1. 给变量命名应该注意哪些问题?
答:每个变量必须进行数据类型说明;
2. 程序2的运行结果中,d和e的值为什么不同?
答:d的赋值语句中,除法是两个整型数字的运算,其结果没有小数位;而e中对b进行了强制转换为实型,所以其除法运算结果有小数位。
3.程序3的运行结果中,i和j的值为什么不同?m和n的值为什么不同?//改为程序3
1.
输入数据
4,5
输入修改后的数据
4 5
4↙5↙
运行结果
s=0.493827
运行结果
s=0.493827
s=0.493827
原因
字符控制串中有“,”,所以输入时必须有“,”
原因
字符控制串中没有除说明符以外的其他字符,所以输入时可以通过空格分隔
字符控制串中没有除说明符以外的其他字符,所以输入时可以通过回车分隔
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>
{
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(" 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");
}
(4) 运行结果(或截图)
请输入圆的半径:1.5
c = 9.42,s = 7.07,v = 14.13
五、思考题:
scanf(“%d,%d”,&a,&b)与scanf(“%d%d”,&a,&b)输入数据的方式有什么不同?从两种输入方式的对比中你得到什么启发?
答:第一种输入方式用户必须以“,”分隔,而第二者可用空格、回车分隔,用户在不知情的情况下,很难知道用“,”分隔输入的数据。所以编程人员可以在scanf()语句前用printf()语句进行注释,让用户知道用什么来分隔输入的数据。
printf(" y = %f\n", 3*x-11);
else if ( x>=1 )
printf(" y = %f\n", 2*x-1);
else
printf(" y = %f\n", x);
return 0;
}
3.
# include <stdio.h>
int main (void)
{
int score;
答:上级输入与编辑源程序—对原程序进行编译–与库函数链接–运行可执行的目标程序。
2. 组成C程序的基本单位是函数,一个函数包括哪几个部分?
答:一个函数包括两部分:分别为函数头或函数首部 和 函数体。
成绩指导教师签名
实验二
实验项目名称:数据类型、运算符和表达式
所使用的工具软件及环境:Visual C++ 6.0
一、实验目的:
1.掌握整型、实型与字符型这三种基本类型的概念;
2.掌握常量及变量的使用方法;
3. 掌握基本算术运算符及其表达式的使用方法;
4. 掌握++、--运算符、赋值运算符及其表达式的使用方法。
二、预习内容:
教材《C语言程序设计教程》第2章。
三、实验内容:
1. 在Visual C++ 6.0环境下输入下面的程序,编译、连接、调试该程序。
答:i(m)是通过后自增(后自减)实现的,而后自增(后自减)是先参与其他运算,后对变量递增(递减);
而j(n)是通过前自增(前自减)实现的,其是先对变量递增(递减),后再参与其他运算。
4. 请分析表达式a+=a-=a*a+a的运算过程(写出运算步骤)。
答:先将a -(a*a+a)赋值给a,再将a+a 赋值给a 。
}
①输入并调试。
②将scanf函数改为scanf(“%d%d”,&a,&b);再编译,运行。
③观察结果。
2. 在Visual C++ 6.0环境下输入并运行下面的程序,观察分析程序运行过程及结果。
#include <stdio.h>
int main( )
{
int a,b,sum;
printf("请输入第一个整数:");
四、程序中所用的变量及其类型:
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);