C++程序设计答案_中国铁道出版社.doc
文本预览下载声明
习题一
一、 选择题
1.C 2. C 3.B 4.C 5.C 6.D 7.C 8.A 9.B 10.D
二、 填空题
1. 算法 2. main 3. ; 4. cpp obj exe
5. 符号 定义 6. 是10 是11 7. double 1
8. -264 9. 是4
10. m-m/n*n 11. a为6 b为4 c为2 12. 为1
三、 问答题
3. .dsw 、.dsp、.ncp、.cpp
4. 提高程序的可读性、可维护性。在行注释前加“//”。段注释放入“/*”和“*/”之间。注释对原程序的编译和运行没影响。
5. 设置符号常量主要提高源程序的可读性、维护性。区别:1.识别时,主要看符号的定义;2.运行时,符号常量不能改变值而变量可改变。
6. 字符常量通常指一个字符,存储单元为一个字节;字符串可包含多个字符,存储单元为字符数加1个字节。
7. 1.0 、1.1e2 类型:double; 1L、65536 类型:long
8. int、new 不是,因为是关键字;abc、lxyz、a_0、Hello、aaaaa、_a是合法的标识符;a+b、!A不是,因为+、!是运算符。0_abc不是是因为数字开头;d$a不是是因为标识符不应包含$。
9. 合法:(1)、(5)、(6)
10. 全部都是。
11. a=2;b=1
12. 2;-2;6、4、40、-3、3
13. (1) 4 a=3 b=4 c=5; (2)5 a=3 b=4 c=6; (3)-9 a=3 b=5 c=5;
(4) 4 a=4 b=4 c=4
14. (1) (float) k (2)x-int(x) (3)m/10%10
(4)(ch=’A’ ch=’Z’)?(ch=’a’+ch-‘A’):ch
习题二
、 选择题
1.B 2. C 3.A 4.B 5.B
二、 填空题
1. if 2. do while和for 3.循环体 循环体 4. 1 n+1 n
5. 5,4,6
三、程序阅读题
15. m=5
16. 1 4,2 6,2 3,3 5,5 6,c=37
、 程序设计题
1.#include iostream
#include cmath
using namespace std;
float a,b,c,s,area;
void main()
{cout输入a b c:; cinabc;
if ((a+bc)(a+cb)(b+ca))
{s=(a+b+c)/2;cout面积=sqrt(s*(s-a)*(s-b)*(s-c));}
else
cout输入的不是三角形的三条边;
}
2.见《实验教程》p27 4.
3.#include iostream.h
void main()
{float x,y;
cout输入购物款:;cinx;
switch (int(x/1000))
{ case 0:y=x;break;
case 1:y=x*0.95;break;
case 2:y=x*0.9;break;
case 3:y=x*0.85;break;
default:y=x*0.8;
}
cout优惠款为:yendl;
}
4.见《实验教程》p28 5.
5. #include iostream
using namespace std;
int i,n;
long js=1;
void main()
{cout输入n:; cinn;
for (i=1;i=n;i++)
js*=i;
coutn!=js;
}
6. #include iostream
#include cmath
using namespace std;
int n=1;
float pi=0,xn=4;
void main()
{ while (fabs(xn)1.0e-8)
{ pi+=xn;n++;xn=-4.0*sign(xn)/(2*n-1);
}
coutπ=pi;
}
7. #include iostream.h
void main()
{ int i,j,sum;
for(i=2;i=1000;i++)
{ sum=0;
For (j=1;ji;j++)
if (i%j==0) sum+=j;
if (sum==i)
{couti--;
For (j=1;ji;j++)
If (i%j==0) co
显示全部