c++编程题题Word文档下载推荐.docx
《c++编程题题Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《c++编程题题Word文档下载推荐.docx(47页珍藏版)》请在冰豆网上搜索。
(D)当输入数值时,对于整型变量只能输入整型值,对于实型值只能输入实型值
13、以下选项中合法的用户标识符是()
(A)int(B)a#(C)5mem(D)_243
14、以下选项中合法的C语言字符常量是()
(A)’\t’(B)”A”(C)67(D)A
15、以下选项中不正确的转义字符是()
(A)’\\’(B)’\’’(C)’020’(D)’\0’
16、C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符()
(A)必须为字母(B)必须为下划线
(C)必须为字母或下划线(D)可以是字母、数字、下划线中任意一种
二、填空题
1、C语言中的标识符可分为_____、_____和预定义标识符3类。
2、在C语言程序中,用关键字_____定义基本整型变量,用关键字_____定义单精度实型变量,用关键字_____定义字符型变量。
3、计算机中内存储器的最小存储单位是_____,其中能容纳的数是_____。
4、通常一个字节包含_____个二进制位。
在一个字节中能存放的最大(十进制)整数是_____,最小(十进制)整数是_____,它的二进制数的形式是_____。
5、一个C语言程序的开发过程包括:
编辑、_____、连接和运行4个步骤。
6、在C源程序中,可使用_____和_____两种方式进行注释。
7、在C语言中,输入操作时由库函数_____完成,输出操作由库函数_____完成。
8、若s是int型变量,且s=6,则表达式s%2+(s+1)%2的值为_____。
9、若a、b和c均为int型变量,则计算表达式a=(b=4)+(c=2)后,a值为_____,b值为_____,c值为_____。
10、字符串”ab\034\\\x79”的长度为_____。
第二章运算符与表达式
1、以下程序的输出结果为()
#include<
stdio.h>
voidmain()
{inti=4,a;
a=i++;
printf(“a=%d,i=%d”,a,i);
}
(A)a=4,i=4(B)a=5,i=4(C)a=4,i=5(D)a=5,i=5
2、若已定义x和y为double类型,则表达式“x=1,y=x+3/2”值为()
(A)1(B)2(C)2.0(D)2.5
3、已知字符A的ASCII码值为65,以下程序()
{chara='
A'
;
intb=20;
printf("
%d,%o"
(a=a+1,a+b,b),a+'
a'
-'
b);
(A)表达式非法,输出零或不确定值
(B)因输出项过多,无输出或输出不确定值
(C)输出结果为20,142
(D)输出结果为20,142,20
4、对于条件表达式(M)?
(a++):
(a--),其中的表达式M等价于()
(A)M==0(B)M==1(C)M!
=0(D)M!
=1
5、若有定义:
intx=3,y=2;
floata=2.5,b=3.5;
则下面表达式的值为()
(x+y)%2+(int)a/(int)b
(A)1.0(B)1(C)2.0(D)2
6、若x和n均是int型变量,且x的初值为12,n的初值为5,则执行下面表达式后x的值为()
x%=(n%=2)
(A)0(B)1(C)2(D)3
7、假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为()
(A)7(B)8(C)9(D)10
8、下列程序的输出结果是()
{doubled=3.2;
intx,y;
x=1.2;
y=(x+3.8)/5.0;
printf(“%d\n”,d*y);
(A)3(B)3.2(C)0(D)3.07
9、设intx=1,y=1;
表达式(!
x||y--)的值是()
(A)0(B)1(C)2(D)-1
10、执行以下程序段后,c3的值为()
intc1=1,c2=2,c3;
c3=1.0/c2*c1;
(A)0(B)0.5(C)1(D)2
11、如下程序的运行结果是()
{inty=3,x=3,z=1;
printf(“%d%d\n”,(++x,y++),z+2);
(A)34(B)42(C)43(D)33
12、能正确表示逻辑关系“a≥10或a≤0”的C语言表达式是()
(A)a>
=10ora<
=0(B)a>
=0|a<
=10
(C)a>
=10&
&
a<
=0(D)a>
=10||a<
=0
13、设x、y、t均为int型变量,则执行语句:
x=y=3;
t=++x||++y;
后,y的值为()
(A)不定值(B)4(C)3(D)1
14、设a、b、c、d、m、n均为int型变量,且a=5,b=6,c=7,d=8,m=2,n=2,则逻辑表达式(m=a>
b)&
(n=c>
d)运算后,n的值为()
15、假定w、x、y、z、m均为int型变量,有如下程序段:
w=1;
x=2;
y=3;
z=4;
m=(w<
x)?
w:
x;
m=(m<
y)?
m:
y;
z)?
z;
则该程序运行后,m的值是()
(A)4(B)3(C)2(D)1
16、下列程序的输出结果是()
{inta=0,b=0,c=0;
if(++a>
0||++b>
0)
++c;
printf(“a=%d,b=%d,c=%d”,a,b,c);
(A)a=0,b=0,c=0(B)a=1,b=1,c=1
(C)a=1,b=0,c=1(D)a=0,b=1,c=1
17、在C语言中,如果下面的变量都是int类型,则输出的结果是()
sum=pad=5;
pad=sum++,pad++,++pad;
printf(“%d\n”,pad);
(A)7(B)6(C)5(D)4
18、以下程序的输出结果是()
#include<
voidmain()
{inti=010,j=10;
printf(“%d,%d\n”,++i,j--);
(A)11,10(B)9,10(C)010,9(D)10,9
19、已知inti;
floatf;
,正确的语句是()
(A)(intf)%i;
(B)int(f)%i;
(C)(intf%i);
(D)(int)f%i;
20、已知inta=4,b=5;
,则执行表达式a=a>
b后,变量a的值为()
(A)0(B)1(C)4(D)5
21、判断char类型数据c1是否为大写字母的最简单且正确的表达式为()
(A)’A’<
=c1<
=’Z’(B)(c1>
=’A’)&
(c1<
=’Z’)
(C)(c1>
=’A’)AND(c1<
=’Z’)(D)(c1>
1、若i为int整型变量且赋值为6,则运算i++后表达式的值是_____,变量i的值是_____。
2、条件“20<
x<
30或x<
-100”的C语言表达式是_____。
3、下面程序的输出结果是_____。
{intx=023;
printf(“%d\n”,--x);
4、对以下数学式,写出3个与a/c*b等价的C语言表达式_____、_____、_____。
5、若a是int型变量,则执行表达式a=25/3%3后a的值为_____。
6、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为_____。
7、若有定义intm=5,y=2;
则执行表达式y+=y-=m*=y后y的值为_____。
8、已知inty;
floatx=-3;
,执行语句y=x%2;
后,变量y的值为_____。
第三章基本语句
1、合法的C语言赋值语句是()
(A)a=b=58(B)k=int(a+b)(C)a=58,b=58(D)--i;
2、若变量已正确定义,以下程序段:
x=5.16894;
printf(“%f\n”,(int)(x*1000+0.5)/(float)1000);
的输出结果是()
(A)输出格式说明与输出项不匹配,输出无定值
(B)5.170000(C)5.168000(D)5.169000
3、若有以下程序段:
inta=0,b=0,c=0;
c=(a-=a-5),(a=b,b+3);
printf(“%d,%d,%d\n”,a,b,c);
其输出结果是()
(A)3,0,-10(B)0,0,5(C)-10,3,-10(D)3,0,3
4、若有以下程序段:
voidmain()
{inta=2,b=5;
printf(“a=%%d,b=%%d\n”,a,b);
}()
(A)a=%2,b=%5(B)a=2,b=5
(C)a=%%d,b=%%d(D)a=%d,b=%d
5、以下程序段:
floata=3.1415;
printf(“|%6.0f|\n”,a);
(A)|3.1415|(B)|3.0|(C)|3|(D)|3.0|
6、若变量c定义为float类型,当从终端输入283.1900后按回车键,能给变量c赋以283.19的输入语句是()
(A)scanf(“%f”,c);
(B)scanf(“%8.4f”,&
c);
(C)scanf(“%6.2f”,&
(D)scanf(“%8f”,&
7、下面程序的输出结果是()
main()
{intx=5,y=3;
printf(“%d”,y=x/y);
(A)0(B)1(C)3(D)不确定的值
8、若变量已正确定义,下面程序段的输出结果是()
x=5.238794;
(A)5.239000(B)输出格式说明与输出项不匹配,输出无定值
(C)5.238000(D)5.24
9、下面的程序()
{intx=3,y=0,z=0;
if(x=y+z)printf(“*****”);
elseprintf(“#####”);
(A)有语法错误不能通过编译(B)输出*****
(C)可以通过编译,但不能运行(D)输出#####
10、执行下面程序中的输出语句后,a的值是()
{inta;
printf(“%d\n”,(a=3*5,a*4,a+5));
(A)65(B)20(C)15(D)10
11、以下程序实现将两个数对调的操作,请填空()
{inta,b;
scanf(“%d%d”,&
a,&
b);
a=a+b;
b=a-b;
a=______;
(A)a+b(B)a-b(C)b*a(D)a/b
12、若变量已正确说明,则以下程序段:
a=2;
b=3;
printf(a>
b:
”***a=%d”;
”###b=%d”,a,b);
(A)没有正确的输出格式控制(B)输出为:
***a=2
(C)输出为:
###b=3(D)输出为:
***a=2###b=3
13、已知inta,b;
,用语句scanf(“%d%d”,&
输入a,b值时,不能作为输入数据分隔符的是()
(A),(B)空格(C)回车(D)Tab键
14、语句printf(“%d”,(a=2)&
(b=-2));
(A)无输出(B)结果不确定(C)-1(D)1
15、下述程序的输出结果是()
{printf(“%f”,2.5+1*7%2/4);
(A)2.500000(B)2.750000(C)3.375000(D)3.000000
16、根据定义和数据的输入方式,输入语句的正确形式是()
已有定义:
floatf1,f2;
数据的输入方式:
4.52
3.5
(A)scanf(“%f,%f”,&
f1,&
f2);
(B)scanf(“%f%f”,&
(C)scanf(“%3.2f%2.1f”,&
(D)scanf(“%3.2f,%2.1f”,&
1、变量i、j、k均已定义为int类型并赋有初值0,用以下语句进行输入:
scanf(“%d”,&
i);
scanf(“%d”,&
j);
k);
当执行以上输入语句,从键盘输入(<
CR>
代表回车键);
12.3<
则变量i、j、k的值分别是_____、_____、_____。
2、复合语句在语法上被认为是_____,空语句的形式是_____。
3、本题程序如下:
{charc;
inti;
printf(“输入一个正整数(小于255):
”);
c=(char)i;
printf(“%c的ASCII码为%d\n”,c,i);
从键盘输入97<
,执行结果为_____。
4、以下程序的输出结果为_____。
{printf(“*%f,%4.3f*\n”,3.14,3.1415);
}
第四章选择结构
1、下列错误的语句是()
(A)if(a>
b)printf(“%d”,a);
(B)if(&
);
a=m;
(C)if
(1)a=m;
elsea=n;
(D)if(a>
0);
{elsea=n;
2、读下列程序:
{floata,b,t;
scanf(“%f,%f”,&
if(a>
b){t=a;
a=b;
b=t;
printf(“%5.2f,%5.2f”,a,b);
运行时从键盘输入3.8,-3.4,则正确的输入结果是()
(A)-3.40,-3.80(B)-3.40,3.80
(C)-3.4,3.8(D)3.80,-3.40
3、读下列程序:
{intx,y;
x);
y=0;
if(x>
=0)
{if(x>
0)y=0;
elsey=-1;
printf(“%d”,y);
运行时从键盘输入32,则输出结果是()
(A)0(B)-1(C)1(D)不确定值
4、对下述程序,()是正确的判断
scanf(“%d,%d”,&
x,&
y);
y)
x=y;
y=x;
else
x++;
y++;
printf(“%d,%d”,x,y);
(A)有语法错误,不能通过编译(B)输入3和4,输出4和5
(C)输入4和3,输出3和4(D)输入4和3,输出4和4
5、以下程序的输出结果是()
{intx=1,y=0,a=0,b=0;
switch(x)
{case1:
switch(y)
{case0:
a++;
break;
case1:
b++;
case2:
a++;
case3:
printf(“\na=%d,b=%d”,a,b);
(A)a=1,b=0(B)a=2,b=1(C)a=1,b=1(D)a=2,b=2
6、为表示关系:
x≥y≥z,应使用的C语言表达式是()
(A)(x>
=y)&
(y>
=z)(B)(x>
=y)AND(y>
=z)
(C)(x>
=y>
=z)(D)(x>
=z)
7、下列程序的输出结果是()
{inta=2,b=-1,c=2;
if(a<
b)
if(b<
0)c=0;
elsec+=1;
printf(“%d\n”,c);
(A)0(B)1(C)2(D)3
8、以下程序的输出结果是()
{intw=4,x=3,y=2,z=1;
printf(“%d\n”,(w<
x?
z?
z:
x));
(A)1(B)2(C)3(D)4
9、以下程序的运行结果是()
{intk=2;
switch(k)
printf(“%d”,k++);
case4:
default:
printf(“Full\n”);
}}
(A)13(B)23(C)22(D)32
10、语句printf("
a\bre\'
hi\'
y\\\bou\n"
(A)a\bre\'
y\\\bou(B)a\bre\'
y\bou
(C)re'
hi'
you(D)abre'
11、如下程序的输出结果是()
{intx=1,a=0,b=0;
b++;
printf(“a=%d,b=%d\n”,a,b);
(A)a=2,b=1(B)a=1,b=1(C)a=1,b=0(D)a=2,b=2
12、阅读以下程序:
{intx;
scanf("
%d"
&
if(x--<
5)printf("
x);
elseprintf("
x++);
程序运行后,如果从键盘上输人5,则输出结果是:
(A)3(B)4(C)5(D)6
13、以下程序的输出结果是()
main()
{inta=15,b=21,m=0;
switch(a%3)
{case0:
m++;
switch(b%2)
{default:
case0:
}}
printf(“%d”,m);
14、下列程序的输出结果是()
{inta=-1,b=4,k;
k=(++a<
0)&
!
(b--<
=0);
printf(“%d%d%d”,k,a,b);
(A)104(B)103(C)003(D)004
15、假定所有变量均已正确说明,下列程序段运行后x的值是()
a=b=c=0;
x=35;
if(!
a)x--;
elseif(b);
if(c)x=3;