C++复习题(全部答案)_第1页
C++复习题(全部答案)_第2页
C++复习题(全部答案)_第3页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、C+根底、变量、常量局部试题:一单项选择题8.由C+语言编写的代码程序A.可直接执行.exe才可以直接执行 B.是一个源程序C.经过编译即可执行经过编译链接才可以执行D.经过编译解释才能执行9.按照C+语言规定的用户标识符命名规那么,不能出现在标识符中的是A.大写字母B.中划线C.数字字符D.下划线10.以下选项中,不能用作标识符的是A. 1234B. 1 2C. int 2D. 2 int11.以下选项中合法的用户标识符是A. Io ng 关键字B. 2TestC. 3DmaxD. A. dat12.以下不能定义为用户标识符的是A. MainB. 0C. intD. sizeof运算符13.

2、列定义变量的语句错误的选项是14.A. i ntnt;B. double int_;C. char For;D. float USA在C+语言中,非法的字符常量是'017'B.C. "n"D. xaa'29.以下程序的输出结果是void main()int k=11;cout<<dec<<"k="<<k<< “cout<<oct<<"k="<<k<< “,cout<<hex<<"k=

3、"<<k<<e ndl;A. k=11,k=12,k=11B. k=11,k=13,k=13D. k=11,k=13,k=bC. k=11,k=013,k=0xb41.不属于C+语言关键字的是。A . intB. break42.是C+语言提供的合法关键字的是A . FloatB. signed43.以下说法中,错误的选项是丨。C. while。C. integerD. characterD. CharA .每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符 号B .每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函

4、数或系统函数,用户函数可以相互调用D .程序是由假设干个函数组成的,但是必须有、而且只能有一个主函数填空题1. 一个C+源程序至少有并且只能有一个main(主)函数。2. 以下程序运行后的输出结果是1012a_。#in clude<iostream.h>#i nclude<ioma nip.h>int mai n()int a=10;cout<<dec<<a<<oct<<a<<hex<<a<<e ndl;return 0;3. 以下程序运行后的输出结果是(25 21 37)。void m

5、ai n()int a,b,c;a=25;b=025;c=0x25;cout<<a<<" "<<b<<" "<<c<<e ndl;_2 1 。void mai n() int a=1,b=2;a=a+b;b=a-b;a=a-b;cout<<a<<" "<<b;5. 结构化设计中的三种根本结构是_顺序结构 _、 _选择结构 _、_循环结构 _。6. C+ 语言源程序文件的后缀是_.cpp_,经过编译后生成文件的后缀是_.obj_,

6、经过链接后生成文件的后缀是_.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. 2D. 115.以下运算符中优先级最高的运算符是 (A. <=B. =C. %D. &&16.以下程序的输出结果是main()i

7、nt a=3,b=4;cout<<(a<=b)<<endl;A. 3B. 4C. 1D. 017.在C+语言中,以下非法的表达式是 ( )A. x+B. i=j=0C. (char)(65+3)D. x+1=x+118.在C+语言中,以下非法的赋值语句是()A. j+;B. +(i+1);C. x=j>0;D. k=i=j;19.表达式 3.6-5/2+1.2+5%2 的值是 ( )A. 4.3B. 4.8C. 3.320.设有语句:int a=3;那么执行了语句a+=a-=a*a;变量a的值是(A. 3B. 0C. 9D. -12 21.设有语句:int

8、x=10; 那么执行了语句x+=x-=x-x;变量x的值是(A. 10 B. 20 C. 40D. 3022.以下程序的输出结果是 ( )void main()int i=10,j=1;cout<<i-<<“, <<+j<<endl;A. 9,2 B. 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<<

9、(z=(x%y,x/y)<<endl;A. 1 B. 0C. 9,1D. 10,1B. 100D.200 100C. 4D. 325.int k=0;, 以下选项的四个表达式中与其他三个表达式的值不相同的是 ( )A. k+ B. k+=1 C. +k D. k+126.以下程序的输出结果是 ( )void main()int x,y,z;x=y=1;z=x+,y+,+y;cout<<x<<", "<<y<<", "<<z<<endl;A. 2,3,3 B. 2,3,2

10、C. 2,3,1 D. 2,2,127.设X、y、t均为int型变量,执行了以下程序后,变量 y的值为丨。void main()int X,y,t;X=y=3;t=+X|+y; cout<<y<<endl;A. 1 B. 2 C. 3 D. 428.设int x=-1; 执行表达式 +x|+x|+x|+x,x 的值是()A. 0 B. 1 C. 2 D. 445.逻辑运算符两侧运算对象的数据类型。A 只能是 0或1B .只能是0或非0正数C. 只能是整型或字符型数据D. 可以是任何类型的数据46. 以下关于运算符优先顺序的描述中正确的选项是。A .关系运算符 <算

11、术运算符 <赋值运算符 <逻辑与运算符B .逻辑与运算符 <关系运算符 <算术运算符 <赋值运算符C. 赋值运算符 <逻辑与运算符 <关系运算符 <算术运算符D. 算术运算符 <关系运算符 <赋值运算符 <逻辑与运算符48.判断char型变量s是否为小写字母的正确表达式是 丨。A. 'a'<= s<='z'B. ( s>= 'a') & (s<= 'z')C. (s>='a') && (s<

12、= 'z')D. ('a'<=s) and ( 'z'>= s)49.。那么以下不能满足要求的表达式是。A. x%2=1B . !(x%2=0)C. !(x%2)D . x%250. x=45, y= 'a' , z=0;那么表达式(x>=z &&y< ' z' | !y)的值是丨。B .语法错C. 1D.假51.执行以下语句后,y的值为。int x,y, z;x=y=z=O;+x | +y && +z;55.那么执行下面语句后的w值是。void mai n(

13、)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<<e ndl;C. 2不确定值C. 3二填空题:_2007 。main ()int x=2006,y=2007;cout<<(x,y);2.以下程序运行后的输出结果是 Dvoid mai n()char ch='B'ch+=2;cout<<ch<<e ndl;3以下程序运行后的输出结果是 98void mai n()int c;char ch=97;c=ch+1;cou

14、t<<c<<e ndl;4. 以下程序运行后的输出结果是 #in clude<iostream.h>int mai n()float x=123.4567f;cout<<(i nt)(x*100+0.5)/100.0<<e ndl;return 0;5. 以下程序运行后的输出结果是 14#in clude<iostream.h>void mai n()int a=10;a=(3*5,a+4);cout<<a<<e ndl;-10 -10 -7。#in clude<iostream.h>v

15、oid mai n()int a=0,b=0,c=0;c=(a+=a_=5),(a=b,b+3);cout<<a<<" "<<b<<" "<<c<<e ndl;0。#in clude<iostream.h>void mai n()int a=5,b=4,c=3,x;x=a>b>c;cout<<x<<e ndl;3 0。#in clude<iostream.h>void mai n()int a=3,b=2;b=a<0&

16、amp;&a+>3;cout<<a<<" "<<b<<e ndl;9. 以下程序运行后的输出结果是 1。#in clude<iostream.h>void mai n()int x,a=1,b=2,c=3,d=4;x=(a<b)?a:b;x=(x<c)?x:c;cout<<x<<e ndl;10. 设int x=9 , y=8 ;表达式x=y+1的结果是 1。11. 定义 int x , y;执行 y=(x=1,+x,x+2);后,y 的值是4。12. 定义 int

17、 x=10,y,z;执行 y=z=x; x=y=z ;后,x的结果是 1三、流程控制语句局部试题:一单项选择题2.void mai n()int i;for(i=0;i<3;i+)switch(i)case 0:cout<<i;case 1:cout<<i;default:cout<<i;程序执行后的输出结果是()A. 000112B. 012C.012022D. 1207.以下程序运行后的输出结果是4 5 99。#in clude<iostream.h>void mai n()int a=3,b=4,c=5,t=99;if(b<a

18、&& a<c) t=a;a=c;c=t;if(a<c && b<c) t=b;b=a;a=t;cout<<a<<" "<<b<<" "<<c<<e ndl;30. 以下程序段的输出结果是()void mai n()int x=5;if(x+>5)cout<<x<<e ndl;elsecout<<x-<<e ndl;A. 4B. 5C. 6D. 731. 有以下程序:void mai

19、 n()int n=4;while( n-)cout<< _n;程序执行后的输出结果是()A. 20B. 31C. 321D. 21032. 有以下程序void mai n()int y=10; while(y-) ; cout<<y<<endl; 程序执行后的输出结果是 ( )A. y=0C. y=1B. y=-1D. while 构成无限循环44.为了防止嵌套的 if-else 语句的二义性,C+语言规定else总是与组成配对关系。A 缩排位置相同的 ifB .在其之前未配对的ifC.在其之前未配对的最近的ifD .同一行上的ifA.if(a=b) c+

20、;B.if(a=<b) c+;C.if(a<>b) c+;D.if(a=>b) c+;52. int a=1,b=2,c=3;以下语句执行后a,b,c的值是 。if(a>b)c=a; a=b; b=c;A.a=1, b=2, c=3B.a=2, b=3, c=3C.a=2, b=3, c=1D.a=2, b=3, c=247.选择出合法的if语句设int x , a, b, c;丨。53.请阅读以下程序:该程序 。 void main() int x=-10, y=5, z=0;if (x=y+z) cout<<"*n"else c

21、out<<"$n"A .有语法错不能通过编译B .可以通过编译但不能通过连接C.输出*D .输出$54.执行完下面一段程序后x的值是丨。void main()int a=1,b=2,c=4,d=3,x;if (a<b)if (c<d) x=1;elseif (a<c)if (b<d) x=2;else x=3;else x=4;else x=5;cout<<x<<endl;D4A1B 2C 356.以下 switch 语句结构哪一个是正确的?A.void main()int a=1,b=0,c1,c2,x,y;sw

22、itch (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 3: y=b-a; break;D.void main()int a=1,b=0,c1,c2,x,y;switch

23、 (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分数: 85 100等级: B分数: 60 84等级: C分数: 60以下对于等级grade俞出相应的分数区间,能够完成该功能的程序段是丨。A.void main()char grade;cin>>grade;switch (grade)case 'A':cout<<"85-100n"case 'B':cou

24、t<<"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"case 'C':co

25、ut<<"<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;case 'C':cout<<"<60n" default:c

26、out<<"grade is error!n" D.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" break;case 'C':cout<<"<60n&

27、quot;58.当执行以下程序段时,程序将 。 void main()int x=-1;do x=x*x; while (!x);A. 循环体将执行一次59.假设i,j已定义为int类型,那么以下程序段中内循环的总的执行次数是丨。for i=5 ;i ; i-for j=0 ;j<4 ;j+60.有以下语句:i=1;for(;i<=100;i+) sum+=i; 与以上语句序列不等价的有 ()。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;)s

28、um+=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;/*/B.19A. 20二填空题:2. #in clude<iostream.h>0void mai n()int i,t=0;for(i=5;i>=0;i_)t*=i;cout<<t<<e ndl;3.写成以下程序的输出结果:#in clude<iostream.h>void mai n()in t i=1;w

29、hile(i<=15)if(+i%3!=2) continue;else cout<<i<< ""cout<<e ndl;2 5 8 11 143. 输入a,输出结果是 very good输入c,输出结果是pass。#in clude<iostream.h>void mai n()char n;cin»n;switch( n) case 'a':case 'A':cout<<"very goodn"break;case 'b':ca

30、se 'B':cout<<"goodn"break;case 'c':case C:case 'd':case 'D':cout<<"passn"break;case 'e':case 'E':cout<<"warni ngn"break;default:cout<<"err orn"4. 以下程序的功能是计算:1-2+3- 4+99-100void mai n() int

31、 i=1,j=1,s=0;while(<=100) s+= i*j ;i+;j=-j ;cout<<s<<e ndl;6假设从键盘输入58,那么输出结果是_585858。#in clude<iostream.h>void mai n()int a;cin> >a;if (a>50) cout<<a;if (a>40) cout<<a;if (a>30) cout<<a;7. 下面程序根据以下函数关系,对输入的每个x值,计算出y值。请在【】内填空。Xy2<x<=10x(x+2)

32、-1<x<=21/xx<=-1x-1void mai n()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<=-1) y=x-1;else 【3 】y=-1;if (y!= -1) cout<<y<<e ndl;else cout<" error <<endl ;8. 以下程序是对用户输入的字母进行大小写转换。

33、请在【】内填入正确内容。void mai n()char ch;cout<< please in put a letter:;cin> >ch;if (【1 】(ch>= 'A ' && (ch<= 'Z')ch=ch+32;else if (ch>= ' a' && ch<= ' z')【2 ch=ch-32;cout<< the con verted letter is<<ch<<e ndl;9. 以下程序运行后

34、的输出结果是20 0。void mai n()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 | +y && +z;11. 程序运行结果是 135。#in clude<iostream.h>void mai n()int i;for(i=1;i+1;i+)if(i>4)cout<<i+;break;cout<<

35、;i+;三编程题1.100百钱百鸡:100元钱买100只鸡,公鸡一只5元钱,母鸡一只3元钱,小鸡一元钱三只,求 元钱能买公鸡、母鸡、小鸡各多少只?2输出九九乘法表。四、数组与指针局部试题:一单项选择题3.以下数组定义中错误的选项是A. int x3=0;B. i nt x23=1,2,3,4,5,6;C. i nt x3=1,2,3,4,5,6;D. i nt x23=1,2,3,4,5,6;4.以下能正确定义二维数组的是A. int a3;B. i nt a3=2*3;C. i nt a3=;D. i nt a23=1,2,3,4;5.设有 char array="Ch in a&

36、quot;那么数组array所占的空间字节数为D. 7A. 4B. 5C. 66.对于以下定义正确的表达为char x="abcdefg"char y='a','b','c','d','e','f,'g'B.数组x和数组y的长度相同D.数组x的长度大于数组y的长度A. 数组x和数组y等价C.数组x的长度大于数组y的长度33.以下表达中正确的选项是A. 可以在一个函数中调用另一个函数B. 可以在一个函数中定义另一个函数C. main 函数必须放在其它函数之前D. 所有被调用

37、函数一定要在调用之前进行定义34. 以下说法中正确的选项是 ( )A. C+ 语言程序总是从第一个函数开始执行B. 在C+语言程序中,要调用的函数必须在 main()函数中定义C. C+ 语言程序总是从 main() 函数开始执行D. C+语言程序中的main()函数必须放在程序的开始局部35.以下程序的输出结果是 ( )void main( )int a10=1,2,3,4,5,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

38、,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)<<endl;A. 16B. 10C. 8D. 638.以下不能正确进行字符串赋初值的语句是 ( )A. char str5= "good!" ; B. char str="good!"C. char *str="go

39、od!"D. char str5='g','o','o','d','!'39.以下程序的输出结果是 ( )void main() char str="ABCD",*p=str; cout<<int(*(p+4)<<endl;D. '0'D. fA. 68 B. 'D' C. 040.以下程序的输出结果是 ( )void main() char str="aeiou",*p=str; cout<<*(

40、p+4)<<endl;A. o B. u C. e62.以下关于数组的描述正确的选项是 ( ) 。A. 数组的大小是固定的,但可以有不同的类型的数组元素B. 数组的大小是可变的,但所有数组元素的类型必须相同C. 数组的大小是固定的,所有数组元素的类型必须相同D. 数组的大小是可变的,可以有不同的类型的数组元素 63.以下对一维整型数组 a的正确说明是()。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+语言中,引用数组元素时,其数组下标的数据类

41、型允许是()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 ;。那么以下表达式中不能代表数组元 A. &bb0+1 B. &bb1 C. &bb0+67.假定 int 类型变量占用两个字节,其有定义: int x10=0,2,4; ,那么数组 x 在内存中所占字节数是( ) 。A. 3 B. 6 C. 1068.执行下面的程序段后,变

42、量k中的值为()。int k=3, s2;s0=k; k=s1*10;A. 不定值 B. 33C. 30D. 1069.以下程序的输出结果是 ()void main()int i, a10;for(i=9;i>=0;i-) ai=10-i; cout<<a2<<a5<<a8<<endl;A. 258 B. 741 C. 852 70.假设说明:int a23;贝U对a数组元素的正确引用是()A. a(1,2) B. a1,3C. a1>2!171.假设有定义: int b34=0 ;贝下述正确的选项是 ()A. 此定义语句不正确B.

43、没有元素可得初值 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数组的表达式是bb1 的地址的是 ( )D. bb+1D. 20D. 369D. a20( )D. t0,0A. t24 B. t50C. t0074.在定义 int m 3=1, 2,3, 4, 5,6 ;后, m10 的值是 ( )。A. 4B. 1C.

44、 2D. 575.在定义 intn56后第 10个元素是 () 。A. n25 B. n24C. n13D. n1476.下述对C语言字符数组的描述中错误的选项是()。A. 字符数组可以存放字符串B. 字符数组中的字符串可以整体输入、输出C. 可以在赋值语句中通过赋值运算符 "=" 对字符数组整体赋值 (strcpy()D. 字符数组可以像普通数组那样初始化77.下述对C+语言字符数组的描述中正确的选项是()。A. 任何一维数组的名称都是该数组存储单元的开始地址,且其每个元素按照顺序连续 占存储空间B. 一维数组的元素在引用时其下标大小没有限制C.任何一个一维数组的元素,可

45、以根据内存的情况按照其先后顺序以连续或非连续的 方式占用存储空间D. 一维数组的第一个元素是其下标为1的元素78.不能把字符串:Hello!赋给数组b的语句是()。A. char str10= 'H', 'e', 'l', 'l', 'o', '! 'B. char str10;str="Hello!"C. char str10;strcpy(str,"Hello!");D. char str10="Hello!"79.合法的数组定义是 (

46、)。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<<e ndl;A. you&me B. you C. me D. err99.假设有说明:int a=2, *

47、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, *p仁& a, *p2=&a;下面不能正确执行的赋值语句是。A .a=*p1+*p2;102.B .p1=a;C .p仁 p2;D .a=*p1*(*p2);变量的指针,其含义是指该变量的丨。A.值B .地址C.名D. 一个标志103.假设已定义int a=5;下面对1、

48、 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 . (1)在对p进行说明的同时进行初始化,使p指向a;(2)将变量a的值赋予*p。104.假设有语句int *p, a=10; p=&a;下面均代表地址的一组选项是。A . a, p, *&aB .&*a, & a, *pC .*&p, *p, &

49、aD .&a, &*p, p105.假设需要建立如以下图的存储结构,且已有说明double*p,x=0.2345;那么正确的赋值语句是丨。pxA . p=x;B .p=&x;C . *p=x;D .*p=&x;106.有如下语句:intm=6,n=9,*p,*q;p=&m;如图1所示,假设要实现以以下图所示的存储结构,可选用的赋值语句是q=&n;。mqA. *p=*q;C. p=q;107.下面判断正确的选项是丨。A . char *s=" girl"B. char s10= "girl"C. char *

50、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' , ' d' ;109.下面程序段的运行结果是丨。char *s=" abcde"s+

51、=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"丨。字符'c'的地址 D .无确定的输出结果t=s;那么以下表达正确的选项是丨。A . s和t完全相同B. 数

52、组s中的内容和指针变量t中的内容相等C . s数组和t指针指向的字符串没有关系D . *t与s0相等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 s10; 那么在下面表达式中不表示A s+1B113.s+下面程序段的运行结果是。注:main() c

53、har s6;s=" abcd" ;cout<< s;A " abcd"B ." abed113.以下程序的输出结果是。main()s1地址的是。c &s0+1D &s1代表空格c""D 编译出错int a=1,2,3,4,5,6,7,8,9,0, *p; p=a;cout<<*p+9<<endl;c 10D 9A 0B 1114.有以下程序 : #include<iostream.h> #include<string.h> int main()ch

54、ar *p="abcde0fghjik0" cout<<strlen(p)<<endl; return 0;c 6D 5程序运行后的输出结果是。A 12 B 15115.有以下程序:int main() int a10=9,8,7,6,5,4,3,2,1,0, *p=a+5; cout<<*-p<<e ndl;return 0;C.5D.3输出结果是丨。A. 非法B.a4的地址116.有以下函数:char *fun( char *s) return s;该函数的返回值是丨。B.形参s中存放的地址值D.形参s自身的地址值A. 无

55、确定值C. 一个临时存储单元的地址二填空题:1. 设有定义语句:int a3=0,1,2;那么数组元素a12的值为_02.在C+语言中,有如下语句:int a=10,20,30,40,50,60,*p;p=a+3;cout<<*p+<<e ndl;那么输出结果是_0。3.以下程序运行后的输出结果是15int a23=1,2,3,4,5,6;int m,*p;p=&a00;m=(*p)*(*(p+2)*(*(p+4);cout<<m<<e ndl;6.以下程序运行后的输出结果是ab#in clude<iostream.h>voi

56、d mai n()char s="abcdef:s3='0:cout<<s<<e ndl;7.以下程序运行后的输出结果是_D。#in clude<iostream.h>void mai n()char s="ABCD",*p=s;cout<<*(p+3)<<e ndl;8.以下程序运行后的输出结果是_4。char str="stop0n""cout<<strle n( str)<<e ndl;9.以下程序运行后的输出结果是_5。#in clud

57、e<iostream.h>#in clude<stri ng.h>void mai n()char str="Beiji ng"cout<<strle n( strcpy(str,"Ch in a")<<e ndl;7.以下程序运行后的输出结果是_5_#in clude<iostream.h>#in clude<stri ng.h>void mai n()char a='1','2','3','4','0'

58、;cout<<sizeof(a)<<" "<<strle n( a)<<e ndl;8.输入20个整数到一维数组,统计正整数的个数及其和void mai n() int a20,i,sum,co unt;sum=co unt= 0 ;for(i=0;i<20;i+)cin> >ai;for(i=0;i<20;i+)if( ai>0) coun t+; sum+=ai; cout<<co un t<<" "<<sum<<e ndl;9. 输入10个整数到一维数组,输出其中最大数和最小数void mai n() int a10,i,max,mi n;for(i=0;i<10;i+)cin> >ai;max=min= _a0

温馨提示

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

评论

0/150

提交评论