1、C+语言程序设计期末复习题一、单项选择题 1. C+源程序文件的默认扩展名为(A. cpp )。2. 由 C+源程序文件编译而成的目标文件的默认扩展名为( B. exe )。3. 由 C+目标文件连接而成的可执行文件的默认扩展名为( B. exe )。4. C+程序从上机到得到结果的几个操作步骤依次是(B. 编辑、编译、连接、运行 )。5. 以下标识符中不全是保留字的是(B. default then while) 。6. 能作为 C+程序的基本单位是(C. 函数 )。7. 程序中主函数的名字为(A. main ) 。8. C+程序的基本模块为(D. 函数 ) 。 9. 可用作 C+语言用户标
2、识符的一组标识符是(B. a3_b3 _123 YN )。10. 存储以下数据,占用存储字节最多的是(D. 0.0 ) 。 11. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用(D. 空格或回车 )符号作为分隔符。 12. 设”int a=12;”,则执行完语句”a+=a*a;”后,a 的值是(C. 156 )。13. 假设在程序中 a、b、c 均被定义成整型,所赋的值都大于1,则下列能正确表示代数式 的表达式是(D. 1.0/a/b/c )。 14. 设”int a=15,b=26;”,则”cout0 25. 在下面循环语句中内层循环体 S 语句的执行总次数为(D. n(n+1
3、)/2 ) 。for(int i=0; ivoid main() int f,f1,f2,i; cout#includevoid main()int i,n; for(n=2; _(1)_; n+) int temp=int(sqrt(n); /求出 n 的平方根并取整for(i=2; _(2)_; i+)if(n%i=0) _(3)_; if(itemp) coutvoid main()int a,b; coutab; while(aab; while(b) int r; r=a%b;_(2)_; _(3)_; /分别修改 a 和 b 的值 coutvoid main()int x; cou
4、tx; while(_(1)_); int i=2;do while(_(2)_) cout=i return p*a*b; 7. 在输出屏幕上打印出一个由字符*组成的等腰三角形,该三角形的高为 5 行,从上到下每行的字符数依次为 1,3,5,7,9。#include void main()int i,j; for(i=1; i=5+i) cout int count (char str);void main()char s180;cout s1; cout =a void main( ) har s80; cins; fun(s); cout const int len=20; void d
5、elstr(char a,char b,char c);void main() char str1len,str2len; char ch; coutstr1;coutch; delstr(str1,str2,ch); cout #includevoid main() int a8=25,48,32,85,64,18,48,29;int max,min; max=min=a0;for(int i=0; iai) max=ai; if(minvoid main()int a,b;for(a=1,b=2; b const int M=3, N=4;void main()int i,j,s=0;fo
6、r(i=1;ivoid main()int a=2,b=5,c=0;if(a+b10) c=a*b; else c=3*a+b; if(c void main() int x=5; switch(2*x-3) case 4: cout#includeint a4=36,-5,73,8;void main()int i,y; for(i=0; i int a8=36,25,20,43,12,70,66,35;void main()int s0,s1,s2; s0=s1=s2=0; for(int i=0; i const int N=5;void main()int i,p=1,s=0; for
7、(i=1;iconst int M=20;void main()int c2,c3,c5; c2=c3=c5=0; for(int i=1; ivoid main()int i,j;for(i=0;ivoid main()for(int i=1,s=0;ivoid main()int i,s=0; for(i=2;i#include#includevoid main()int i=10,a; while(i0) a=rand()%90+10;int j, k=int(sqrt(a)+1e-5); /sqrt(x)为求 x 的平方根函数for(j=2; jk) cout0) cout doubl
8、e f1(int n) double sign=1,s=1;for(int i=2;ia; cout#includevoid main()int x,y; cinx; y=int(sqrt(x); /sqrt(x)为求x 的算术平方根for(int i=1;ivoid main()int i,p=1,s=0; int N; coutN;for(i=1;i#include #includeconst N=10; int ff(int x, int y) int z; coutz; if(x+y=z) return 1; else return 0; void main()int a,b,c=0;
9、 srand(time(0); /初始化随机数序列for(int i=0;ibool fun8(T a, int n, T key) for(int i=0;ivoid main()int i; double s=0; for(i=1; svoid main()int i; /用 i 作为循环变量int p=1; /用 p 作为累乘变量 int s=1; /用 s 作为累加循环变量for(i=1;ivoid main()int i=0; /用 i 作为依次取值偶数的变量 int s=0; /用 s 作为累加变量do i+=2; s+=i*i;while(s#includeconst doubl
10、e a=10.2; void main()double x,y; cinx;while(x!=-100) if(xx; 5、 出从键盘上输入的 10 个整数中的最大值,要求输入变量用 x表示,存储最大值的变量用 max 表示。#include void main()int x,max; cinx; max=x; for(int i=0;ix; if(xmax) max=x; coutvoid main()int a,b; for(a=6;avoid main()int c1,c2,c3; double x; c1=c2=c3=0; cinx;while(x0) if(xx; cout=0 if(ai0) return 1; else return 0;16. 根据下面类中 Compare 函数成员的原型和注释写出它的类外定义。class AA int* a;int n;int MS;public:void InitAA(int aa, int nn, int ms) if(nnms) coutms) coutb.n) k=b.n; else k=n;for(int i=0; ib.ai) return 1;else if(aib.ai) return -1;if(k=n else if(kn) return 1; else return -1;