当前位置:首页 > C++程序设计习题大荟萃
C++练习题大荟萃 本书共包含十个章节的内
容
第一章 C++语言的概述 一、简答题
1. C++的单词包含那几种?
2. 一个标识符中的首字符必须是什么字
符?其余位置上的字符必须是什么字符? 3. 数值常量、字符常量、字符串常量和标
识符在表示上各有什么区别? 4. C++语句分为哪几类?
5. #include命令的格式和功能各是什么?
使用尖括号和双引号在含义上有什么区别?
6. 你已经知道了那几个系统头文件? 7. cout和cin 标识符的含义是什么?他们
后面分别使用什么运算符?各运算符的作用是什么?
8. 上机运行一个程序需要经过那些阶段? 二、填空题
1. 程序中的预处理命令是指以______字符
开头的命令。
2. 一条简单语句是以______字符作为结束
符的,一条复合语句是分别以______字符和______字符作为开始符和结束符的。
3. 空白符是______符、______符、和______
符的统称。
4. 在#include命令中所包含的头文件,
可以是______头文件,也可以是______头文件。
5. 使用#include命令可以包含一个头文
件,也可以包含一个______文件。
6. 一个函数定义由______和______两部分
组成。
7. 一个程序中必须有一个名为______的函
数。
8. 函数头与______语句一样都能够提供出
函数的参数和返回类型等信息。
9. 若一个函数的定义处于调用它的函数之
前,则在程序开始可以省去该函数的______语句。
10. 一个函数的函数体就是一条______。
1
11. C++头文件和源程序文件的扩展名分别为
______和______。
12. 程序文件的编译错误分为______和
______两类。
13. 当使用______保留字作为函数类型时,
该函数不返回任何值。
14. 当函数参数表用______保留字表示时,
则表示该参数表为空。
15. 从一条函数原型语句”int fun1(void);”
可知,该函数的返回类型为______,该函数带有______个参数。
16. 当执行cout语句向C++显示输出屏幕输
出一个数据项的值时,若该值的显示宽度(即所占显示位置的字符数)为n,则显示该值后光标将从原位置后移______个字符显示位置。
17. 当执行cout语句输出endl数据项时,
将使C++显示输出屏幕上的光标从当前位置移动到______的开始位置。
18. 当执行cin语句时,从键盘上输入每个
数据后必须输入一个______符,然后才能接着输入下一个数据。
三、写出下列程序运行结果,此题又作为上机实验题
1. #include
void main() {
int x,y; x=5;y=6;
cout<<”x+y=”< } 2. #include int cube(int); void main(void) { cout<<”cube(3)=”< int cube(int x) { return x*x*x; } 3. #include #include”abc.h” void main() { double a,b,c; double averageValue; a=2;b=3;c=4; averageValue=AVE(a,b,c); cout<<”averageValue;”< averageValue=AVE(a,b+1,c+2); cout<<”averageValue:”< 其中abc.h文件的内容如下: double AVE(double x,double y,double z) { return (x+y+z)/3; } 4. #include #include”example.h” void main() { int a,b,c; cout<<”请输入3个整数:” cin>>a>>b>>c; cout<<”最大值:” < cout<<”最小值:” < } 其中example.h文件的内容如下: int max_value(int a,int b,int c); int min_value(int a,int b,int c); 这两个函数的定义(又称为函数的实现或具体实现)被保存在另一个程序文件中,它将被编译后连接到主文件中产生出可执行文件。该程序文件的内容如下: int max_value(int a,int b,int c) { if(a 的值赋给a if(a 的值赋给a return a; } int min_value(int a,int b,int c) { 2 if(a>b) a=b;// 若a大于b则将b 的值赋给a if(a>c) a=c;// 若a大于c则将c 的值赋给a return a; } 请读者自行假定用于输入的3个整数。 第二章 数据类型和表达式 一、简答题 1. C++数据分为哪四种大的类型?在大的 整数类型中又分为哪四种类型? 2. 整数类型分为哪三种类型,每种类型的 长度各是多少? 3. 实数类型分为哪三种类型,它们的类型 长度各是多少? 4. 单精度和双精度分别表示多少位有效数 字? 5. 每一种C++具体类型的关键字是什么? 6. 哪四种保留字能够用来修饰int 保留 字成为类型关键字?哪两种保留字能够用来修饰char保留字成为类型关键字? 7. 整型常数具有哪三种不同进制的表示? 如何区分它们? 8. 一个整数后缀L或U分别具有什么含 义? 9. 转义字符序列中的首字符是什么字符? 10. 实数具有哪两种表示方法?一个浮点数 具有那些成分?什么叫规格化浮点数? 11. 定义符号常量和变量的语句有什么异 同? 12. #define命令的作用是什么? 13. 一个C++运算符具有哪三种属性? 14. 左值和非左值(又称右值)有什么区别? 15. 在程序文件中使用系统数学函数或随机 函数时,各需要通过#include命令引入哪个头文件? 16. 一个表达式是否必须有一个值,在什么 情况下它没有值? 17. 执行一个函数调用的大致过程是什么? 函数运算的优先级如何? 二、填空题 1. 数据类型 int,char,bool,float,double的类型长度分别为______、______、______、______和______。 2. 短整型、整型和长整型的最简关键字 分别为______、______和______。 3. 常数-4.205,1200和6.7E-9分别具有 ______、______和______位有效数字。 4. 数值常量46、0173和0x62对应十进 制值分别为______、______和______。 5. 字符常量 ’k’,’\\n’,’\\\\’,’ /052’和’\\xA2’对应的数值分别为______、______、______、______和______。 6. 字符串”It \\’s\\40an\\40apple.\\n” 中包含有______个字符。 7. 枚举类型中的每个枚举值都是一个 ______,它的值是一个______,值的类型为______。 8. 实数340.0和0.027E8对应的规格化 浮点数分别为______和______。 9. 常数100,-25,3.62,1E5和-4.73f 的数据类型分别为______、______、______、______和______。 10. 若x的值为10,则x+=5的值和运算后 的______的值相同,等于______。 11. 若x=5,y=10,则计算y*=++x表达式后, x和y的值分别为______和______。 12. 若x=25,则计算y=x++表达式后,x和 y的值分别为______和______。 13. 假定x和ch分别为int 型和char型, 则sizeof(x)和sizeof(ch)的值分别为______和______。 14. 假定x=64,y=88,则x<<2和y>>2的值 分别为______和______。 15. 假定x是一个逻辑量,则x&&true的 值与______的值相同,x||false的值也与______的值相同。 16. 假定x是一个逻辑量,则x&&!x的值 分别为______和______。 17. 假定x=10,则表达式x<=10?20:30的值 为______。 18. 假定x=10.5,y=-4.6,则表达式floor (fabs(x+y))的值为______。 19. 表达式sqrt(81)和pow(6,3)的值分别 为______和______。 20. 随机函数rand() 的值在______至 ______区间内。 bx+1 21. 数学算式(1+x)sin48°和axe对应的 算术表达式分别为______和______。 3 三、试指出下列各表达式值的类型 假定a为int型,x为double型, 1. 327 2. -1.5e6 3. 42.0f 4. 48L 5. 0372 6. 0xabc 7. 1/3 8. 1%3 9. 1.0%3 10. a*3/x 11. a*(a+x) 12. 1+a*a 13. a+=3 14. x*=2 15. ‘x’ 16. ‘x’+20 17. true 18. ++a 19. short(a) 20. bool(x) 21. (unsigned int)(0256) 22. x=a++ 23. sizeof(bool) 24. char(a+10) 25. abs(x) 26. fabs(a) 27. floor(x) 28. ceil(a) 29. exp(4)+2 30. rand() 31. rand()/100 32. floor(log(x)) 33. pow(a,4) 34. a>10?x:sqrt(x) 35. a>100 36. x!=10 37. a&&x 38. a<1||a>10 39. !x 40. !(a==0) 四、试求出下列每个表达式的值(各表达式互不影响) 已知a=20,x=4.7,r=’a’, 六、写出下列每个程序运行后的输出结果并自行上机验1. a++ 证 2. ++r 3. a%5 4. a/5 5. r 6. 1+a/3%4 7. a/8.0 8. r+=4 9. x=2*(x+5)-1 10. char(a+30) 11. 10*sizeof(int) 12. (a<<3)+5 13. a>0 14. a==1 15. a++&&r!=’a’ 16. ++a&&r==’a’ 17. a||x<=10 18. a==r||a==floor(x) 19. a=(r>’A’?a+10:a-10) 20. a=(r<’A’?a+10:a-10) 21. x=(a++,r++) 22. x=(a++,r++,50) 23. x=pow(3,5) 24. x=fabs(-26.5)+4 25. a=abs(a)%8-10 26. floor(x+0.5) 27. ceil(x-0.5) 28. ceil((x-=0.5)-0.5) 五、把下列数学算式或不等式表示成C++表达式 1. 2x(1+x2 /3) 2. (1+ex)/(1-ex ) 3. (-b+(b2-4ac)1/2 )/2a 4. 1/(3x ln(2x+k)) 5. sin3(x+π/4)/(3+cos3 (x-π/4)) 6. 1/7(1+ex+1) n 7. 0<=x<=20 8. ax-by!=c 9. 4x+7y-2=3ab 10. |2x2 +1|/|3x+2|<-5同时3x+2!=0 11. age>=55或者pay>=820 12. place=”江苏”同时sex=”女” 13. ‘a’<=ch<=’z’或者’A’<=ch<=’Z’ 14. s[0]=’0’同时(s[1]=’x’或者s[1]=’ X’) 4 1. #include enum race{Black,White,Yellow}; void main() { race ra; ra=Black;cout< ; } 2. #include #define PI 3.14159 const int R=10 void main() { double p,s; p=2*R*PI; cout<<”p=”< 3. #include void main() { int i=0,j=1,k; k=i+=j; cout< 4. #include void main() { cout< cout< < cout< < cout< <
共分享92篇相关文档