C++复习题(全部答案)_第1页
C++复习题(全部答案)_第2页
C++复习题(全部答案)_第3页
C++复习题(全部答案)_第4页
C++复习题(全部答案)_第5页
免费预览已结束,剩余29页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、A.可直接执行(.exe才可以直接执行) B.是一个源程序C.经过编译即可执行(经过编译链接才可以执行)D.经过编译解释才能执行按照C+遮言规定的用户标识符命名规则,不能出现在标识符中的是()C.数字字符D.下划线C. int_2_D. 2_intC. 3DmaxD. A. datC. _intD. sizeof(运算符)C. char For;D. float USA ;C. "'n"D. ' xaa'B. k=11,k=13,k=13D. k=11,k=13,k=bC+碳础、变量、常量部分试题:(一)单选题8.由C+镭言编写的代码程序()9.A.

2、大写字母B.中划线10. 下列选项中,不能用作标识符的是()A. _1234_B. _1_211.以下选项中合法的用户标识符是()A. long (关键字)B. _2Test12.以下不能定义为用户标识符的是()A. MainB. _013.列定义变量的语句错误的是()A. int _int;B. double int_;14.在C+镭言中,非法的字符常量是()A. t'B. ' 017'29.以下程序的输出结果是()void main()int k=11;cout<<dec<<"k="<<k<< ”,

3、 cout<<oct<<"k="<<k<< ”, cout<<hex<<"k="<<k<<endl;A. k=11,k=12,k=11C. k=11,k=013,k=0xb41.不属于C+语言关键字的是()。A . intB. breakC. whileD. character42.是C+语言提供的合法关键字的是()。A . FloatB. signedC. integerD. Char43.下列说法中,错误的是()。A.每个语句必须独占一行,语句的最后可以是

4、一个分号,也可以是一个回车换行符B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数(二)填空题1 . 一个C+礴程序至少有并且只能有一个main(主)函数。2 .以下程序运行后的输出结果是1012a。#include<iostream.h>#include<iomanip.h>int main() int a=10;cout<<dec<<a<<oct<<a<<hex<<a<

5、;<endl;return 0; 3 .以下程序运行后的输出结果是(25 21 37)。void main() int a,b,c;a=25;b=025;c=0x25;cout<<a<<" "<<b<<" "<<c<<endl; 4 .以下程序运行后的输出结果是2 1 qvoid main()int a=1,b=2;a=a+b;b=a-b;a=a-b;cout<<a<<" "<<b;5 .结构化设计中的三种基本结构是顺序Z

6、构_、选择Z构_、_循环结构_。6 .C+语言源程序文件的后缀是 .cpp,经过编译后生成文件的后缀是_.obj_,经过链接后生成文件的后缀是.exe 。7 . 一个函数由两部分组成,它们是 函数首部_、函数体_。8 .若x和y均为int型变量,则以下语句的功能是_交换变量x,y的值x+=y; y=x-y; x-=y;二、运算符部分试题:(一)单选题1.以下程序的输出结果是()void main()int a=1,b=2,c=3,d=4;cout<<(a<b?a:c<d?a:d)<<endl;A. 4B. 3C. 215.下列运算符中优先级最高的运算符是()

7、A. <=B. =C. %16.以下程序的输出结果是()main()int a=3,b=4;cout<<(a<=b)<<endl;A. 3B. 4C. 117.在C+镭言中,以下非法的表达式是()A. x+B. i=j=0C. (char)(65+3)18.在C+镭言中,以下非法的赋值语句是()A. j+;B. +(i+1);C. x=j>0;D. 1D. &&D. 0D. x+1=x+1D. k=i=j;19.表达式3.6-5/2+1.2+5%2的值是()A. 4.3B. 4.8C. 3.3D. 3.820.设有语句:int a=3;

8、则执行了语句A. 3B. 021. 设有语句:int x=10; 则执行了语句A. 10B. 2022.以下程序的输出结果是() void main()int i=10,j=1;cout<<i- << ; " <<+j<<endl;A. 9,2B. 10,223.以下程序的输出结果是() void main()int x=100,y=200; cout<<(x,y)<<endl;A. 200C. 100 20024.以下程序的输出结果是() void main()int x=10,y=3,z;cout<&l

9、t;(z=(x%y,x/y)<<endl; A. 1B. 025. int k=0;, A. k+a+=a-=a*a;变量a的值是() C. 9D. -12x+=x-=x-x; 变量x的值是() C.40D. 30C. 9,1DB. 100D.200 10010,1C. 4D. 3()D以下选项的四个表达式中与其他三个表达式的值不相同的是B.k+=1C. +kk+126.以下程序的输出结果是()void main() (int x,y,z;x=y=1;z=x+,y+,+y;cout<<x<<", "<<y<<&qu

10、ot;, "<<z<<endl;)A. 2,3,3B. 2,3,2C. 2,3,1D. 2,2,127. 设x、y、t均为int型变量,执行了以下程序后,变量 y的值为()。 void main() (int x,y,t;x=y=3;t=+x|+y;cout<<y<<endl;)A. 1B. 2C. 3D. 428. 设int x=-1;执行表达式 +x|+x|+x|+x,x 的值是()A. 0B. 1C. 2D. 445.逻辑运算符两侧运算对象的数据类型()。A.只能是0或1B.只能是0或非0正数C.只能是整型或字符型数据D.可以是任

11、何类型的数据 46.以下关于运算符优先顺序的描述中正确的是()。A.关系运算符算术运算符赋值运算符 <逻辑与运算符B.逻辑与运算符关系运算符 <算术运算符赋值运算符 C.赋值运算符 <逻辑与运算符关系运算符算术运算符 D.算术运算符关系运算符赋值运算符 <逻辑与运算符 48. 判断char型变量s是否为小写字母的正确表达式是()。A .,a,<= s<=,z,B . (s>=,a,) & (s<=,z,)C. (s>= ' a')&&(s<= ' z')D. ('a

12、9;<=s)and(' z'>=s)若希望当x的值为奇数时,表达式的值为真”,x的值为偶数时,表达式的值为 假”。则以下不能满足要求的表达式是()。A. x%2=1B. !(x%2=0)C. !(x%2)D. x%250.已知 x=45, y='a', z=0;则表达式(x>=z && y< 'z' | !y)的值是()。A. 0C. 151.执行以下语句后,y的值为int x,y,z;x=y=z=0;+x | +y && +z;A. 0B. 155.则执行下面语句后的w值是void mai

13、n()int a=1,b=2,c=3,d=4,w;w=(a<b)?a:b;w=(w<c)?w:c;w=(w<d)?w:d;cout<<w<<endl;A. 1B. 2C. 2()。C. 3语法错假”D.不确定值D. 4(二)填空题:1 .以下程序运行后的输出结果是2007main()int x=2006,y=2007; cout<<(x,y);2 .以下程序运行后的输出结果是 D void main()char ch='B'ch+=2;cout<<ch<<endl;3 .以下程序运行后的输出结果是 9

14、8void main()int c;char ch=97;c=ch+1;cout<<c<<endl;4 .以下程序运行后的输出结果是123.46#include<iostream.h>int main()float x=123.4567f;cout<<(int)(x*100+0.5)/100.0<<endl;return 0;5 .以下程序运行后的输出结果是 14#include<iostream.h>void main()int a=10;a=(3*5,a+4);cout<<a<<endl;6 .

15、以下程序运行后的输出结果是-10 -10 -7#include<iostream.h>void main()int a=0,b=0,c=0;c=(a+=a-=5),(a=b,b+3);cout<<a<<" "<<b<<" "<<c<<endl;7 .以下程序运行后的输出结果是0#include<iostream.h>void main()int a=5,b=4,c=3,x;x=a>b>c;cout<<x<<endl;)8 .

16、以下程序运行后的输出结果是3 0。#include<iostream.h>void main()(int a=3,b=2;b=a<0&&a+>3;cout<<a<<" "<<b<<endl;)9 .以下程序运行后的输出结果是1。#include<iostream.h>void main()(int x,a=1,b=2,c=3,d=4;x=(a<b)?a:b;x=(x<c)?x:c;cout<<x<<endl;)10 .设int x=9 ,

17、y=8;表达式x=y+1的结果是 1。11 .定义 int x , y;执行 y=(x=1,+x,x+2);后,y 的值是 4。12 .定义 int x=10,y,z;执行 y=z=x; x=y=z ;后,x的结果是 1三、流程控制语句部分试题:(一)单选题2.void main()(int i;for(i=0;i<3;i+) (switch(i)(case 0:cout<<i;case 1:cout<<i;default:cout<<i;程序执行后的输出结果是 ()A. 000112B. 012C.012020D. 1207.以下程序运行后的输出结果

18、是4 5 99。#include<iostream.h>void main()int a=3,b=4,c=5,t=99;if(b<a && a<c) t=a;a=c;c=t;if(a<c && b<c) t=b;b=a;a=t;cout<<a<<" "<<b<<" "<<c<<endl;30 .以下程序段的输出结果是()void main()int x=5;if(x+>5)cout<<x<&l

19、t;endl;elsecout<<x-<<endl;A. 4B. 5C. 6D. 731 .有以下程序:void main()int n=4;while(n-)cout<<-n;程序执行后的输出结果是()A. 20B. 31C. 321D. 21032 .有以下程序int y=10;while(y-);cout<<y<<endl;程序执行后的输出结果是()A. y=0C. y=144.为了避免嵌套的if-else语句的二义性,A.缩排位置相同的ifB.在其之前未配对的ifC.在其之前未配对的最近的ifD.同一行上的if47.选择出合法

20、的if语句(设int x, a, bA. if(a=b) c+;B. if(a=<b) c+;C. if(a<>b) c+;D. if(a=>b) c+;52.已知int a=1,b=2,c=3;以下语句执行后 if(a>b)c=a; a=b; b=c;A. a=1,b=2,c=3C. a=2, b=3, c=153.请阅读以下程序:该程序()。void main() int x=-10, y=5, z=0;if (x=y+z) cout<<”*n”;else cout<<"$n"A.有语法错不能通过编译B.可以通过编译

21、但不能通过连接C.输出*D.输出$54.执行完下面一段程序后x的值是( void main()B. y=-1D. while构成无限循环C+语言规定else总是与()c;)()。a,bd勺值是()。B . a=2, b=3, c=3D . a=2, b=3, c=2组成配对关系。int a=1,b=2,c=4,d=3,x;if (a<b)if (c<d) x=1; else if (a<c) if (b<d) x=2; else x=3; else x=4; else x=5;cout<<x<<endl;A. 1B. 2C. 3D. 456.以下

22、switch语句结构哪一个是正确的?()A.void main()int a=1,b=0,c1,c2,x,y;switch (a+b);case 1: y=a+b; break;case 0: y=a-b; break; B.void main()int a=1,b=0,c1,c2,x,y;switch a ()case c1: y=a-b; break;case c2: x=a*b; break;default:x=a+b; C.void main()int a=1,b=0,c1,c2,x,y;switch (a*a+b*b)case 3:case 1: y=a+b; break;case

23、3: y=b-a;break; D.void main()int a=1,b=0,c1,c2,x,y;switch (a*a+b*b)default:y=a*b;break;case 3: x=a+b; break;case 10:case 11:y=a-b; break;57.假定等级和分数有以下对应关系:等级:A分数:85100等级:B分数:6084等级:C分数:60以下对于等级grade俞出相应的分数区间,能够完成该功能的程序段是()。A.void main() char grade;cin>>grade;switch (grade)case 'A':cout

24、<<"85-100n"case 'B':cout<<"60-84n"case 'C':cout<<"<60n"default:cout<<"grade is error!n"void main()char grade;cin>>grade; switch (grade) case 'A':cout<<"85-100n"break;case 'B':cout

25、<<"60-84n"case 'C':cout<<"<60n"default:cout<<"grade is error!n" B.void main()char grade;cin>>grade; switch (grade) case 'A':cout<<"85-100n"break;case 'B':cout<<"60-84n"break;case 'C&#

26、39;:cout<<"<60n" default:cout<<"grade is error!n" C.void main()char grade;cin>>grade; switch (grade) case 'A':cout<<"85-100n"break;case 'B':cout<<"60-84n"break;default:cout<<"grade is error!n" br

27、eak; case 'C':cout<<"<60n" 58. 当执行以下程序段时,程序将()。void main() int x=-1; do x=x*x; while (!x); A.循环体将执行一次B.循环体将执行两次C.循环体将执行无数多次D.系统将提示有语法错误59. 若i,j已定义为int类型,则以下程序段中内循环的总的执行次数是()。for (i=5 ; i; i-) for (j=0 ; j<4 ; j+) A.20B.24C.25D.3060. 有以下语句: i=1; for(;i<=100;i+) sum+=i

28、; 与以上语句序列不等价的有()。A. for(i=1; ;i+) sum+=i;if(i=100)break; B. for(i=1;i<=100;)sum+=i;i+; C. i=1;for(;i<=100;)sum+=i; D. i=1;for(; ;)sum+=i;if(i=100)break;i+; 61. 标有/*/的语句的执行次数是()。int y,i; for(i=0;i<20;i+) if(i%2=0)continue; y+=i;/*/A.20B.19C.10D.9(二)填空题:2 . #include<iostream.h> 0void ma

29、in()int i,t=0;for(i=5;i>=0;i-)t*=i;cout<<t<<endl;3 .写成下列程序的输出结果:#include<iostream.h>void main()int i=1;while(i<=15)if(+i%3!=2) continue;else cout<<i<< ""cout<<endl; 2 5 8 11 144 .输入a, 输出结果是 very good输入c,输出结果是 pass 0#include<iostream.h>void ma

30、in()char n;cin>>n;switch(n) case 'a':case 'A':cout<<"very goodn"break;case 'b':case 'B':cout<<"goodn"break;case 'c':case 'C':case 'd':case 'D':cout<<"passn"break;case 'e':cas

31、e 'E':cout<<"warningn"break;default:cout<<"errorn")5 .以下程序的功能是计算:1-2+3- 4+99-100void main() int i=1,j=1,s=0;while( i<=100) s+= i*j ;i+;j=-j ; cout<<s<<endl;6 .若从键盘输入58,则输出结果是_585858。#include<iostream.h>void main() int a;cin>>a;if (a&

32、gt;50) cout<<a;if (a>40) cout<<a;if (a>30) cout<<a;7 .下面程序根据以下函数关系,对输入的每个x值,计算出y值。请在“内填空。Xy2<x<=10x(x+2)-1<x<=21/xx<=-1x-1void main()int x,y;cin>>x;if ( 1 (x>2)&&(x<=10) ) y=x*(x+2);else if ( 2 (x>-1)&&(x<=2) ) y=1/x;else if (x

33、<=-1) y=x-1;else 3 y=-1;if (y!= -1) cout<<y<<endl;else cout<" error” <<endl ;8 .以下程序是对用户输入的字母进行大小写转换。请在口内填入正确内容。void main()char ch;cout<<" please input a letter:"cin>>ch;if ( 1 (ch>='A') && (ch<= 'Z') ch=ch+32;else if (

34、ch>= 'a' && ch<= ' z') ch=ch-32;cout<<" the converted letter is<<ch<<endl;9 .以下程序运行后的输出结果是20 0。void main()int x=10, y=20, t=0;if (x=y) t=x; x=y; y=t;cout<<x<< " "<<y;10 .执行以下语句后,x、y和z的值分别为 1. 0. 0。int x,y,z;x=y=z=0;+x |

35、 +y && +z;11 .程序运行结果是 135。#include<iostream.h>void main()int i;for(i=1;i+1;i+)if(i>4)cout<<i+;break;cout<<i+;(三)编程题1.100百钱百鸡:100元钱买100只鸡,公鸡一只5元钱,母鸡一只3元钱,小鸡一元钱三只,求 元钱能买公鸡、母鸡、小鸡各多少只?2. 输出九九乘法表。四、数组与指针部分试题:(一)单选题3.以下数组定义中错误的是 ()A. int x口3=0;B. int x23=1,2,3,4,5,6;C. int x3=

36、1,2,3,4,5,6;D. int x23=1,2,3,4,5,6;4.以下能正确定义二维数组的是()A. int a口3;B. int a口3=2*3;C. int a3=; D. int a23=1,2,3,4;5.设有 char array="China"C.6D. 7B.数组x和数组y的长度相同D.数组x的长度大于数组y的长度则数组array所占的空间字节数为()A. 4B. 56.对于以下定义正确的叙述为()char x="abcdefg"char y='a','b','c','d

37、9;,'e','f','g'A.数组x和数组y等价C.数组x的长度大于数组y的长度33.以下叙述中正确的是()A.可以在一个函数中调用另一个函数B.可以在一个函数中定义另一个函数C. main ()函数必须放在其它函数之前D.所有被调用函数一定要在调用之前进行定义34. 以下说法中正确的是()A. C+语言程序总是从第一个函数开始执行B.在C+诩言程序中,要调用的函数必须在 main()函数中定义C. C+语言程序总是从 main()函数开始执行D. C+语言程序中的main()函数必须放在程序的开始部分 35.以下程序的输出结果是() void

38、 main()int a10=12345,6,7,8,9,10,*p=a;cout<<*(p+2)<<endl; A. 3B. 4C. 1D. 236. 以下程序的输出结果是() void main() int a10=1,2,3,4,5,6,7,8,9,10,*p=a;cout<<(*p+9)<<endl; A. 0B. 1C. 10D. 937. 以下程序的输出结果是() void main() int a10=1,2,3,4,5,6,7,8,9,10,*p=&a3,*q=p+2; cout<<(*p+*q)<<

39、;endl;A. 16B. 10C. 8D. 638. 以下不能正确进行字符串赋初值的语句是()A. char str5= "good!" ; B. char str尸"good!"C. char *str="good!"D. char str5='g','o','o','d','!'39.以下程序的输出结果是() void main() char str尸'ABCD",*p=str;cout<<int(*(p+4)<&

40、lt;endl;A. 68B. 'D'C. 0D. '0'40. 以下程序的输出结果是() void main() char str="aeiou",*p=str;cout<<*(p+4)<<endl;A. oB. uC. eD. f62.以下关于数组的描述正确的是()。A.数组的大小是固定的,但可以有不同的类型的数组元素B.数组的大小是可变的,但所有数组元素的类型必须相同C.数组的大小是固定的,所有数组元素的类型必须相同 D.数组的大小是可变的,可以有不同的类型的数组元素 63.以下对一维整型数组 a的正确说明是()

41、。A.int a(10);B. int n=10,an;C.int n;D. const int SIZE=10;cin>>n;int aSIZE;int an; 64.在C+语言中,引用数组元素时,其数组下标的数据类型允许是()。A.整型常量B.整型表达式C.整型常量或整型表达式D.任何类型的表达式 65.以下对一维数组m®行正确初始化的是()。A. int m10=(0,0,0,0) ;B. int m10= ;C. int m =0;D. int m10=10*2;66.若有定义:int bb 8;。则以下表达式中不能代表数组元bb1的地址的是()A. &b

42、b0+1B. &bb1C. &bb0+D. bb+167. 假定int类型变量占用两个字节,其有定义:intx10=0,2,4;,则数组x在内存中所占字节数是()。A. 3B. 6C. 10D. 2068. 执行下面的程序段后,变量k中的值为()。int k=3, s2;s0=k; k=s1*10;A.不定值 B. 33 C. 30D. 1069.以下程序的输出结果是() void main() int i, a10; for(i=9;i>=0;i-) ai=10-i; cout<<a2<<a5<<a8<<endl;A. 2

43、58 B. 741C. 852D. 36970. 若说明:int a23;则对a数组元素的正确引用是()。A. a(1,2) B. a1,3C. a1>2!1D. a2071. 若有定义:int b34=0;则下述正确的是()。A.此定义语句不正确B.没有元素可得初值0C.数组b中各元素均为0D.数组b中各元素可得初值但值不一定为072. 若有以下数组定义,其中不正确的是 ()。A. int a23;B int b3=0,1,2,3;C. int c100100=0;D. int d3=1,2,1,2,3,1,2,3,4; 73.若有以下的定义:int t54;能正确引用t数组的表达式是

44、()。A. t24 B. t50C. t00D. t0,074. 在定义 int m 3=1, 2, 3, 4, 5, 6;后,m10的值是()。A. 4 B. 1C. 2D. 575.在定义int n56 后第10个元素是()。A. n25 B. n24C. n13D. n1476. 下述对C语言字符数组的描述中错误的是()。A.字符数组可以存放字符串B.字符数组中的字符串可以整体输入、输出C.可以在赋值语句中通过赋值运算符"="对字符数组整体赋值(strcpy()D.字符数组可以像普通数组那样初始化 77.下述对C+遮言字符数组的描述中正确的是()。A.任何一维数组的名

45、称都是该数组存储单元的开始地址,且其每个元素按照顺序连续 占存储空间B. 一维数组的元素在引用时其下标大小没有限制 C.任何一个一维数组的元素,可以根据内存的情况按照其先后顺序以连续或非连续的 方式占用存储空间D. 一维数组的第一个元素是其下标为1的元素78.不能把字符串:Hello!赋给数组b的语句是()。A. char str10= 'H', 'e', T, T, 'o', '!'B. char str10;str="Hello!"C. char str10;strcpy(str,"Hello!&

46、quot;);D. char str10="Hello!"79. 合法的数组定义是()。A. int a="string"B. int a5=0,1,2,3,4,5;C. int s="string"D. char a=0,1,2,3,4,5;80. 以下程序运行后,输出结果是()。main() char arr24;strcpy(arr0,"you"); strcpy(arr1,"me");arr03='&'cout<<arr0<<endl;A.

47、 you&me B. you C. me D. err99.若有说明:int a=2, *p=&a, *q=p;,则以下非法的赋值语句是()。A. p=q;B.*p=*q;C.a=*q;D. q=a;100.若定义:int a=511, *b=&a ;,则cout<<*b;的输出结果为:()A.无确定值B. a的地址C. 512D. 511101.已有定义int a=2, *p1=&a, *p2=&a;下面不能正确执行的赋值语句是()。A. a=*p1+*p2; B.p1=a;C.p1=p2;D. a=*p1*(*p2);102.变量的指针,

48、其含义是指该变量的()。A.值B.地址C.名D. 一个标志103. 若已定义int a=5;下面对(1)、(2)两个语句的正确解释是()。(1) int *p=&a;(2) *p=a;A.语句(1)和(2)中的*p含义相同,都表示给指针变量p赋值。B. (1)和(2)语句的执行结果,都是把变量a的地址值赋给指针变量 p。C. (1)在对p进行说明的同时进行初始化,使p指向a;(2)变量a的值赋给指针变量p。D.在对p进行说明的同时进行初始化,使p指向a;(2)将变量a的值赋予*p。104. 若有语句int *p, a=10; p=&a;下面均代表地址的一组选项是()。A . a

49、, p, *&aB . &*a, &a, *pC. *&p, *p, &aD.&a, &*p, px=0.2345;105. 若需要建立如图所示的存储结构,且已有说明double*p,则正确的赋值语句是()。0.2345 pxA. p=x;B. p=&x;C. *p=x;D. *p=&x;106.有如下语句:int m=6,n=9,*p,*q;p=&m;q=&n;如图1所示,若要实现下图所示的存储结构,可选用的赋值语句是()。A. *p=*q;C. p=q;107.下面判断正确的是()。A . char *

50、s=" girl"B. char s10= " girl"C. char *s=" girl"D. char s4= " boy" , t4= " boy" 108.以下不能正确进行字符串赋初值的语句是(A. char str5= " good!"B. char *str= "good!"C. char str=" good!"D. char str5= ' g' , ' o' ,' o'

51、 , ' d' ; 109.下面程序段的运行结果是()。char *s=" abcde"s+=2;cout<< s;A. cde B.字符'c' C. 110.设有如下的程序段:char s=" girl", *t;B. p=*q;D. *p=q;等价于 char *s; *s=" girl"等价于 char s10; s10= " girl"等价于 char *s; s=" girl" 等价于 char s4=t4= " boy"

52、)。字符'c'的地址 D .无确定的输出结果t=s;则下列叙述正确的是()。A. s和t完全相同B.数组s中的内容和指针变量t中的内容相等C.s数组和t指针指向的字符串没有关系D.义与$0相等 111.若有说明语句:chars=" it is a example. ",*t=" it is aexample."则以下不正确的叙述()。A. s表示的是第一个字符i的地址,s+1表示的是第二个字符t的地址B. t指向另外的字符串时,字符串的长度不受限制C. t变量中存放的地址值可以改变D. s中只能存放16个字符 112. 若已定义char

53、s10;则在下面表达式中不表示s1地址的是()。A. s+1B. s+C.&s0+1D.&s1113.下面程序段的运行结果是()。(注:代表空格)main() char s6;s=" abcd"cout<< s;A. " abcd"B." abcd113.卜列程序的输出结果是()。main() int a尸123,4,5,6,7,8,9,0, *p; p=a;cout<<*p+9<<endl;A. 0B.1114. 有以下程序: #include<iostream.h> #incl

54、ude<string.h> int main() char *p="abcde0fghjik'0"cout<<strlen(p)<<endl;return 0;程序运行后的输出结果是()。A . 12B.15115.有以下程序: int main() C."" D,编译出错C.10D.9C. 6D.5int a10=9,876,5,4,321,0, *p=a+5;cout<<*-p<<endl;return 0;输出结果是()。A. 非法B. a4的地址C.5D.116.有以下函数:ch

55、ar *fun(char *s)return s;该函数的返回值是()。A.无确定值B.形参s中存放的地址值C. 一个临时存储单元的地址D.形参s自身的地址值(二)填空题:1. 设有定义语句:int a口3=0,1,2;则数组元素a12的值为 0。2.在C+语言中,有如下语句:int a=10,20,30,40,50,60,*p;p=a+3;cout<<*p+<<endl;则输出结果是 40。3.以下程序运行后的输出结果是J5。int a23=1,2,3,4,5,6;int m,*p;p=&a00;m=(*p)*(*(p+2)*(*(p+4);cout<&

56、lt;m<<endl;6.以下程序运行后的输出结果是ab。#include<iostream.h>void main()char s尸'abcdef's3='0'cout<<s<<endl;7.以下程序运行后的输出结果是D。#include<iostream.h>void main()char s="ABCD",*p=s;cout<<*(p+3)<<endl;8.以下程序运行后的输出结果是4。char str="stop0n""c

57、out<<strlen(str)<<endl;9.以下程序运行后的输出结果是5。#include<iostream.h>#include<string.h>void main()char str尸'Beijing"cout<<strlen(strcpy(str,"China")<<endl;7.以下程序运行后的输出结果是_5_#include<iostream.h>#include<string.h>void main()char a='1',&

58、#39;2','3','4','0'cout<<sizeof(a)<<" "<<strlen(a)<<endl;8.输入20个整数到一维数组,统计正整数的个数及其和void main() int a20,i,sum,count;sum=count= 0 ; for(i=0;i<20;i+) cin>>ai; for(i=0;i<20;i+) if( ai>0) count+; sum+=ai ; cout<<count<<" "<<sum<<endl;9. 输入10个整数到一维数组,输出其中最大数和最小数void main() int a10,i,max,min;for(i=0;i<10;i+) cin>>ai;max=min= a0 ;for(i=1;i<10;i+) if(ai>max) max=ai ; else if( ai<min ) min=ai;cout<<max<<" "<<min<<endl; 10. 输入一个字符串,将其倒序

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论