1、训练题库二一、选择题(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25) (26) (27) (28) (29) (30) (31) (32) (33) (34) (35) (36) (37) (38) (39) (40) (41) (42) (43) (44) (45) (46) (47) (48) (49) 有以下程序 int i=010,j=10;cout+ij-;程序运行后的输出结果是A)11,10 B)9,1
2、0C)010,9 D)10,9(50) (51) (52) (53) (54) (55) (56) (57) (58) (59) 设有int x=11;则表达式(x+ 1/3)的值是A)3 B)4C)11 D)12(60) 有以下程序 main() double d=3.2; int x,y; x=1.2;y=(x+3.8)/5.0; coutd*y;程序运行后的输出结果是A)3 B)3.2C)0 D)3.07(61) 有以下程序 main() double d; float f; long l; int i; i=f=l=d=20/3; coutilf0 ? 1:x0)y=1; B)if(x
3、) else if(x0)y=1; else y=0; else if(x=0) if(x0)y=1; if(x0)y=1; else if(x= =0)y=0; else y=-1;else y=-1;(69) 有以下循环体 main() int i,j; for(i=0,j=1;i=j+1;i+=2,j-)printf(%dn,i);执行次数是A)3 B)2C)1 D)0(70) 以下叙述正确的是A)dowhile语句构成的循环不能用其他语句构成的循环来代替B)dowhile语句构成的循环只能用break语句退出C)用dowhile语句构成的循环,在while后的表达式为非零时结束循环D)
4、用dowhile语句构成的循环,在while后的表达式为零时结束循环1. J(71) 执行下面的程序段 int k=3,s2;s0=k; k=s1*10;变量k中的值是A)不定值 B)33C)30 D)10(72) 若已定义 int a=0,1,2,3,4,5,6,7,8,9,*p=ai; 其中0=i=9,则对a数组元素不正确的引用是 A)ap-a B)*(&ai) C)pi D)a10(73) 有以下程序 void func(int *a,int b) b0=*a+6; main() int a,b5; a=0; b0=3; func(&a,b); cout b0;程序运行后的输出结果是A)
5、6 B)7C)8 D)9(74) 有以下程序 #include main() int a=2,c=5; couta=”a”b=c; 程序运行后的输出结果是A)a=%2,b=%5 B)a=2,b=5C)a=d,b=d D)a=%d,b=%d(75) 有以下程序 main() int a33,*p,i; p=&a00; for(i=0;i9;i+)pi=i+1; couta12;程序运行后的输出结果是A)3 B)6C)9 D)随机数(76) (77) (78) (79) 有以下程序 int b=2;int func(int *a) b+=*a;return(b); main() int a=2,r
6、es=2; res+=func(&a); coutres;程序运行后的输出结果是A)4 B)6C)8 D)10(80) 有以下程序 main() int i,j,m=0,n=0; for(i=0;i2;i+) for(j=0;j=i)m=1;n+; coutn;程序运行后的输出结果是A)4 B)2C)1 D)0(81) 有以下程序 struct abc int a,b,c; ;main() abc s2=1,2,3,4,5,6; int t; t=s0.a+s1.b; coutt;程序运行后的结果是A)5 B)6C)7 D)8(82) 设int b=2;表达式(b1)的值是A)0 B)2C)4
7、 d) 8 2. (83) (84) (85) (86) (87) (88) (89) 若有定义:float w; int a,b;则非法的switch语句是A)switch(w) B)switch(a) case 1.0: cout”*”endl; case 1: cout”*”endl; case 2.0: cout”*”endl; case 2: cout”*”endl; C)switch(b) D)switch(a+b) case 1: cout”*”endl; case 1: cout”*”endl; default: coutendl; case 2: cout”*”endl; (
8、90) 有以下程序段int a,y;a=10;y=0;do a+=2;y+=a; couta=“a20) break;while(a=14);.A)a=12 y=12 B)a=12 y=12 a=14 y=16 a=16 y=28 a=16 y=20 a=18 y=24C)a=12 y=12 D)a=12 y=12 a=14 y=44(91) 若有以下调用语句 main() . . . int a50,n; . . . fun(n,&a9); . . .则不正确的fun函数的首部是A)void fun(int m,int x) B)void fun(int s,int h41)C)void f
9、un(int p,int *s) D)void fun(int n,int a)(92) (93) (94) (95) 下列程序段中正确的程序段是A)int *p; B)int *s,k;scanf(%d,p); *s=100; . . . . . . C)int *s,k; D)int *s,k;char *p,c; char *p,c;s=&k; s=&k;p=&c; p=&c;*p=a; s=p;. *s=1;. . . .(96) 已知指针p的指向如下图所示, a0 a1 a2 a3 a41020304050 p 则执行语句-p;后*p的值是 A)30 B)20 C)19 D)29(9
10、7) (98) (99) (100) (101) (102) 下列程序 main() char arr24; strcpy(arr,you); strcpy(arr1,me); arr03=&; coutarr;执行后的输出结果是A)you&me B)youC)me D)err(103) 下列程序 void func1(int i);void func2(int i);char st=hello,friend!;void func1(int i) coutsti; if(i3)i+=2;func2(i);void func2(int i) coutsti; if(inext=&b; D)(*p
11、).next=q;3. 4. 二、填空题(每空2分,共40分)请将每空的正确答案写在答题卡【1】【20】序号的横线上,答在试卷上不得分。5. 6. (1) 设有以下变量定义,并已赋确定的值 char w ; int x ; float y ; double z ; 则表达式:w*x+z-y所求得值的数据类型为 【1】 。(2)若有如下图所示五个连续的int类型的存储单元并赋值如下图,a0的地址小于a4的地址。p和s是基类型为int的指针变量。请填空。 a0 a1 a2 a3 a422334455661 若p已指向存储单元a1。通过指针p,给s赋值,使s指向最后一个存储单元a4的语句是 【2】
12、。2 若指针s指向的存储单元a2,p指向存储单元a0,表达式s-p的值是 【3】 。(3) 下面函数用来求出两个整数之和,并通过形参传回两数相加之和值,请填空。 int add (int x,int y, 【4】 z) 【5】 =x+y; (4) 下面程序是计算110之间的奇数之和及偶数之和,请填空。 #include main() int a,b,c,i; a=c=0; for(i=0;i=10;i+) a+=i; 【6】 。 c+=b; cout偶数之和a; cout奇数之和c-11;(5) 下面程序是输出100以内能被3整除且个位数为6的所有整数。请填空。 #include main()
13、 int i,j; for(i=0; 【7】 ;i+) j=i*10+6; if( 【8】 )continue; coutj; (6) 下面程序是将字符数组a中下标值为偶数的元素从小到大排列,其它元素不变。请填空。 #incude main() char a=clangugae,t; int i,j,k; k=strlen(a); for(i=0;i=k-2;i+) for(j=i+2;jk; 【9】 ) if( 【10】 ) t=ai;ai=aj;aj=t; couta; (7) 以下程序的运行结果是 【11】 。 #include main() int k=4,m=1,p; p=func(
14、k,m);coutp; p=func(k,m);coutp;func(int a,int b) static int m=0,i=2; i+=m+1; m=i+a+b; return m;(8) 函数void fun (float *sn, int n)的功能是:根据以下公式计算S,计算结果通过形参指针sn传回,n通过形参传入,n的值大于等于0。请填空。 void fun(float *sn, int n) float s=0.0, w, f=-1.0; int i=0; for(i=0;in;i+) f= 【12】 *f; w=f/(2*i+1); s+=w; 【13】 =s;(9)以下程序
15、的运行结果是 【14】 。#include iostream.hvoid fun(int &x,int *y,int z) x+; (*y)+; z=x+*y;void main() int a=10,b=20,c=15; fun(a,&b,c); couta=a b= bc= cendl;(10)以下程序的运行结果是 【15】 。#include void fun(int x,int y) static int z=10; x+; y+; z+; cout z=z;void main() static int x=10;int y=10; fun(x,y); fun(x,y); cout x
16、=x y=yendl;(11)以下程序的运行结果是 【16】 。#include void fun(int x,int y) cout有两个整形参数的函数endl;void fun(float x) cout有一个浮点形参数的函数endl;void fun() cout无参数的函数endl;void main() int x=10,y=10; float z=5.0; fun(z); fun(x,y); fun(); (12)以下程序的运行结果是 【17】 。#include iostream.h#include math.hclass complex private: double real
17、; double imag; public: complex(double r=0.0,double i=0.0); double abscomplex() double t; t=real*real+imag*imag; return t;complex:complex(double r,double i) real=r;imag=i;void main() complex c1; complex c2(5.0); complex c3(5.0,5.0); coutabs of complex c1 = c1.abscomplex()endl; coutabs of complex c2 = c2.abscomplex()endl; coutabs of complex c3 = c3.abscomplex()endl;三 编程题建立类box,box的构造函数传递立方体的长、宽、高,计算立方体的体积,并统计立方体的个数和总体积
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1