《C++语言程序设计》综合练习与期末复习题

2025-04-28

《C++语言程序设计》综合练习与期末复习题

说明:本综合练习题中的各数据类型长度均参照16位编译系统的相关规定。例如:整型(int)数据占用2个字节的存储单元。

一、语法选择题

1.由C++源程序文件编译而成的目标代码文件的缺省扩展名为( )。 A.cpp B.exe C.obj D.lik

2.设x和y均为bool类型,则x&&y为真的条件是( )。 A.它们均为真 B.其中一个为真 C.它们均为假 D.其中一个为假

3.设有int i;则表达式i=1,++i,++i||++i;i的值为 ( )。 A.1 B.2 C.3 D.4

4.设有int i;则表达式i=1,++i, i++&&++i; i的值为 ( )。 A.1 B.2 C.3 D.4

5.设有int a[ ]={10,11,12},*p=&a[0];则执行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是 ( )。

A.10,11,12 B.11,12,12 C.10,12,12 D.11,11,12 6.设有int i, j, k; 则表达式i=1,j=2,k=3, i&&j&k 的值为 ( )。 A.1 B.2 C.63 D.0

7.设有说明int s[2]={0,1},*p=s; 则下列错误的C++语句是( )。 A.s+=1; B.p+=1; C.*p++; D. (*P)++;

8.若有char a[3]= {?A?,?\\0?,?D?},*P=a,i=2,j=4;则下列表达式值不是1的有( )。

A.strlen (a); B.j‖j; C.* (P+1); D.- -ⅰ; 9.表达式4‖3‖2‖1的值为( )。 A.1 B.2 C.3 D.4 10.表达式1&3&5&7的值为( )。 A.1 B.3 C.5 D.7

11.设a、b和c都是int型变量,且a=3,b=4,c=5,则下列表达式中,值为0的表达式是( )。

A.'A'&&'B' B.a<=b

C.c>=b||b+c&&b-c D. a<=b+c&&c>=a+b 12.若x和y都是int型变量,x=100,y=200,则下面程序片段cout<<(x,y)<

1

A.200 B.100

C.100 200 D.输出格式符不够,输出不确定的值

13.下面各语句中,能正确进行字符串赋值操作的语句行是( )。 A.char s[4][5]={\

B. char s[5]={'A','B','C','D','E'} C. Char *s; s=\D. char *s; cin>>s;

14.若有:int a[6]={4,5,6,9,5,7},*p=a, *q=p; 则对数组元素的错误引用是( )。

A. a[4] B. *(p+4) C. *a++ D. *q++ 15.下列不正确的转义字符是( )。 A.'\\\\' B.'\\\ C.'074' D.'\\0' 16.若有以下定义: char a; int b; float c; double d;

则表达式a*b+d-c*b值的类型为( )。 A. float B. int C. char D. double 17.表示关系x<=y<=z的C++语言表达式为( )。 A. (x<=y)&&(y<=z) B. (x<=y)AND(y<=z) C. (x<=y<=z) D. (x<=y)&(y<=z)

18.设x和y均为int型变量,则执行下面的循环后,y值为( )。 for(y=1,x=1;y<=50;y++) { if(x>=10)}break; if (x%2==1)

{ x+=5; continue;} x-=3; }

A.2 B. 4 C. 6 D. 8 19.给出以下定义:

char x[ ]=\

char y[ ]={'a','b','c','d','e','f','g'}; 则正确的叙述为( )。 A.数组X和数组Y等价 B.数组X和数组Y的长度相同

C.数组X的长度大于数组Y的长度 D.数组X的长度小于数组Y的长度 20.以下叙述中不正确的是( )。

A.在不同的函数中可以使用相同名字的变量

2

B.函数中的形式参数是局部变量

C.在一个函数内定义的变量只在本函数范围内有效

D.在一个函数内的复合语句中定义的变量在本函数范围内有效 21.假定a和b为int型变量,则执行以下语句后b的值为( )。 a=1; b=10; do

{ b-=a; a++; } while (b--<0);

A. 9 B. –2 C. -1 D. 8

22.对于结构中定义的成员,其隐含访问权限为( )。 A. public B. protected C. private D. static

23.设P1和P2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是( )。

A.k=*P1+*P2; B.p2=k;

C.P1=P2; D.K=*P1 * (*P2); 24.设有如下定义:

int arr[]={6,7,8,9,10}; int * ptr;

则下列程序段的输出结果为( )。

ptr=arr;

* (ptr+2)+=2;

cout<<*ptr<<*(ptr+2)<

A.8,10 B.6,8 C.7,9 D.6,10 25.执行以下程序段后,m的值为( )。 int a[2][3]={ {1,2,3},{4,5,6} }; int m,*p; p=&a[0][0];

m=(*p)*(*(p+2))*(*(p+4));

A. 15 B. 14 C. 13 D. 12

26.当使用ifstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为( )。

A. ios::in B. ios::out C. ios::in | ios::out D.没有

27.设有定义 int (*ptr)(); 则以下叙述中正确的是( )。 A. ptr是指向一维数组的指针变量 B. ptr是指向int型数据的指针变量

C. ptr是指向函数的指针,该函数返回一个int型数据

3

D.ptr是一个函数名,该函数的返回值是指向int型数据的指针

28.设有以下说明和定义: typedef union

{ long i; int k[5]; char c; }DATE; struct date

{ int cat; DATE cow; double dog; } too; DATE max;

则下列语句的执行结果是( )。

cout<<(sizeof (struct date ) +sizeof(max))<

{ char a[]=\, b[]=\ char *p1,*p2; int i;

p1=a; p2=b; for(i=0;i<7;i++)

if(*(p1+i)==*(p2+i)) cout<<*(p1+i); }

输出结果是( )。

A. gm B. rg C. or D. ga 30.执行以下程序后的输出结果为( )。 viod fun (int a,int b,int c)

{ a=4; b=5; c=6;a=b+c;b=c+a;c=a+b;} main()

{ int x=10, y=20,z=30; fun (x,y,z);

cout<

A.30,20,10 B.10,20,30 C.11,17,28 D.4,5,6 31.执行以下程序后的输出结果为( )。 int fun(int x,int y,int *cp,int *dp) { *cp=x+y; *dp=x-y; } main()

{ int a, b, c, d; a=30; b=50;

fun(a,b,&c,&d);

4

cout<

A.50,30 B.30,50 C.80,-20 D.80,20

32.设x和y均为int型变量,则以下语句x+=y; y=x-y; x-=y; 的功能是( )。

A.把x和y按从大到小排列 B.把x和y按从小到大排列 C.无确定结果

D.交换x和y中的值

33.以下程序的输出结果是( )。

main()

{ int a=12,b=12;

cout<<(--a)<<” ”<<(++b)<

A.10 10 B.12 12 C.11 10 D.11 13 34.以下程序运行后,输出结果是( )。 main()

{ char *s=\ s+=2;

cout<

A.cde B.字符c的ASCII码值 C.字符c的地址 D.出错 35.当执行以下程序段时( )。

x=-1;

do { x=x*x;} while( !x);

A.循环体将执行一次 B.循环体将执行两次 C.循环体将执行无限次 D.系统将提示有语法错误 36.执行以下程序后,输出的结果是( )。

main() { int y=10;

do {y--;} while(--y); cout<<(y--)<

A.-1 B.1 C.8 D.0

37.若有 int a; 则表达式语句 a+=a -=a*a; 等价于下列哪组表达式语句( )。

A. a+a; a*a; B.a=a+a; a=a-a*a;

5


《C++语言程序设计》综合练习与期末复习题.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:一轮辩论资料

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219