C语言程序设计实训教程习题和实验解答
2.1 C 语言概述
【习题解答】
1 结构化程序有三大基本结构 : 顺序、分支和循环 .
2.. 算法可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤。 或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解 决一类问题。。
有穷性: 一个算法应包含有限的操作步骤而不能是无限的。
确定性: 算法中每一个步骤应当是确定的,而不能应当是含糊的,有零个或多 个输入输出,有一个或多个输出。
有效性 : 算法中每一个步骤应当能有效地执行,并得到确定的结果。 对于程序设计人员,必须会设计算法,并根据算法写出程序。可以用自然语 言、流程图、伪代码和计算机语言表示算法。
C 语言的主要特点有 : 语言简洁、紧凑,使用方便、灵活。 ANSI C 一共只有 32个关键字 ; 控制语句丰富,程序书写自由,主要用小写字母表示,压缩了一切不 必要的成分 ; 运算符丰富,共有 34种; 数据结构类型丰富 ; 具有结构化的控制语句 ; 语法限制不太严格,程序设计自由度大 ;C 语言允许直接访问物理地址,能进行位 (bit) 操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。因此有人 把它称为中级语言 ;生成目标代码质量高,程序执行效率高 ; 与汇编语言相比,用 C 语言写的程序可移植性好。
用传统流程图表达如下 :
2.2数据类型与表达式
【习题解答】
」、选择题
C 2.B 3.A 4.B 5.A 6.B 7.D 8.B 9.D 10.C
二、填空题
整型、实型、字符型、枚举类型 2.3.000000
逗号运算符
三,自右向左
5.1,0
6.32767
三、编程题
计算球的体积。1.已知球的半径为1.5cm,
#i nclude void mai n()
{
float r=1.5,volume;
volume=4.0/3*r*r*r;
printf( “%f n”,volume); }
输入两个数a和b,求a除以b的商和余数,#include void main()
{
int a,b,c,d;
scanf( “%d,%d”,&a,&b);
c=a/b;
d=a%b;
printf( “%d,%d”,c,d);
}
输入三个学生的成绩,求这三个学生的总成绩和平均成绩。
#include void main()
{
int a,b,c,sum;
float average;
printf( “please input students? score:”);
scanf( “%d,%d,%”d ,&a,&b,&c);
sum=a+b+c;
average=sum/3.0;
printf( “sum=%d,average=%fn”,sum,average);
}
【实验解答】
c=10
? 程序功能为输入两个数,求两数的差 ?c=10
#include
void main()
{
int a,b ,c;
a=b=5 ;
c=a+b ;
printf( “a+b=%d”,c) ;
}
68运行结果 i=8,j=10,m=9,n=10,u=9,v=-10( 回车) 5.x=16,y=24,z=24 6. ?100
68
?100 68
d D
?100 68
d D
?120 112
x p
?出错
?304 321
0 A
7.编写一个C程序,输入a, b, c三个整数,求这三个数之和。具体要求:
在 Turbo C 环境或其他编译环境下编辑该程序,然后进行编译连接。
运行该程序,检查你所编写的程序是否正确。 #include
void main()
int a,b,c,sum;
scanf( “%d,%d,%”d ,&a,&b,&c);
sum=a+b+c;
printf( “sum is : %d n” ,sum);
}
2.3 顺序结构程序设计
【习题解答】
一、选择题
B 2. C 3. A 4.A 5.D 6.B
二、填空题
y=2 2.??6??6?6.00?6.00 (? 表示空格 ) 3. k=11,k8=13,k16=b 。
ahpu.edu.cn! ???ahpu.edu.cn!
??????????ahpu ahpu???????????
5,4,c=3 6. i=56,j=789.000000 , x=12345.000000,y=a,c=72
三、编程题
y=7, z=2,计算 y/3*x-2 的值。1.已知 x=3.2 ,
#include void main()
{
float x=3.2;
int y=7,z=2;