二级C笔试每日一练.docx
《二级C笔试每日一练.docx》由会员分享,可在线阅读,更多相关《二级C笔试每日一练.docx(112页珍藏版)》请在冰点文库上搜索。
二级C笔试每日一练
二级C笔试每日一练!
1.表示关系x≥y≥z应使用C语言表达式()
A)(x>=y)&&(y>=z)
B)(x>y)AND(y>z)
C)x>=y>=z
D)(x>=y)&(y>=z)
2.C语言可执行程序的开始执行点是()
A)程序中第一条可执行语言
B)程序中第一个函数
C)程序中的main函数
D)包含文件中的第一个函数
3.以下if语句书写正确的是()
A)if(x=0;)
printf("%f",x);
elseprintf("%f",-x);
B)if(x>0)
{x=x+1;printf("%f",x);}
elseprintf("%f",-x);
C)if(x>0);
{x=x+1;printf("%f",x);}
elseprintf("%f",-x);
D)if(x>0)
{x=x+1;printf("%f",x)}
elseprintf("%f",-x);
4.以下叙述中正确的是()
A)在C程序中,语句之间必须要用分号(;)分隔
B)在C程序中#include行和#define行不是C语句
C)程序中的注释部分可有可无,通常可以省略
D)当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值
5.以下语句的输出结果是()
printf("%d,%d,%u\n",016,16,-16);
A)16,16,65420
B)14,16,6542
C)16,16,-16
D)14,16,-16
6.以下选项中,与k=n++完全等价的表达式是()
A)k=n,n=n+1 B)n=n+1,k=n C)k=++n D)k+=n+1
7.以下合法的赋值语句是()
A)x=y=100
B)d--;
C)x+y;
D)c=int(a+b);
8.设a、b、c为int型变量,若从键盘给a、b、c输入数据,则正确的输入语句是()
A)scanf("%d%d%d",a,b,c);
B)put("%d%d%d",a,b,c);
C)input("%d%d%d",a,b,c);
D)scanf("%d%d%d",&a,&b,&c);
9.以下正确的数组定义语句是()
A)inty[1][4]={1,2,3,4,5,}B)floatx[3][]={{1},{2},{3}}
C)longs[2][3]={{1},{1,2}{1,2,3,}}D)doublet[][3]={0}
0.设有如下的变量定义:
inti=8,k,a,b;
unsingedlongw=5;
doublex=1.42,y=5.2
则以下符合C语言语法的表达式是()
A)a+=a-=(b=4)*(a=3)B)x%(-3);
C)a=a*3=2D)y=float(i)
答案:
11.A 12.C 13.B 14.B 15.B 16.A 17.B 18.D 19.D 20.A
11.下列字符串不属于标识符的是()
A)sum
B)average
C)day_night
D)M.D.JOHN
12.若t已定义为double类型,表达式:
t=1,t++,t+5的值是()
A)1
B)7.0
C)2.0
D)1.0
13.以下各选项企图说明一种新的类型名,其中正确的是()
A)typedefv1int;
B)typedefv2=int;
C)typedefintv3;
D)typedefv4∶int;
14.若有代数式“ex+y2+y/x”,则正确的C语言表达式是()
A)ex+y*y+y/x
B)expx+pow(y,2)+y/x
C)exp(x)+pow(y,2)+y/x
D)ex+y2+y/x
15.若x=3,y=z=4,则下列表达式的值分别为()
(1)(z>=y>=x)?
1∶0
(2)y+=z,x*=y
A)024
B)18
C)08
D)112
16.下面程序的输出结果是()
main()
{inti,j;
i=16;j=(i++)+i;printf("%d",j);
i=15;printf("%d%d",++i,i);
}
A)321615
B)3315,15
C)3415,16
D)341615
17.在C语言中,整数65534在存储单元中的存储情况是()
A)1111111111111111
B)1000000000000010
C)0111111111111111
D)1111111111111110
18.执行语句“for(n=10;n>0;)printf("%d",--n+n--);”后,下列说法正确的是()
A)循环体执行了5次,最终n的值是-1
B)循环体执行了6次,最终n的值是-1
C)循环体执行了6次,最终n的值是0
D)循环体执行了5次,最终n的值是0
19.若有以下定义和语句:
intu=010,v=0x10,w=10;
printf("%d,%d,%d\n",u,v,w);
则输出结果是()
A)8,16,10
B)10,10,10
C)8,8,10
D)8,10,10
20.以下函数调用语句中实参的个数是()
func((exp1,exp2),(exp3,exp4,exp5));
A)1
B)2
C)4
D)5
答案:
11.D 12.B 13.C 14.C 15.A 16.A 17.D 18.D 19.A 20.B
31.以下正确的实型常量是()
A)1.2E
B).579899
C)1.2e0.6
D)8
32.若题中各变量已正确定义并赋值,下面符合C语法的表达式是()
A)a%=7.6;
B)a++,a=7+b+c
C)int(12.3)%4
D)a=c+b=a+7
33.假定w、x、y、z、m均为int型变量,有如下程序段:
w=1;x=2;y=3;z=4;
m=(ww:
x;m=(mm:
y;m=(mm:
z;
则该程序段执行后,m的值是()
A)4
B)3
C)2
D)1
34.若有如下程序段:
intx=3,y=4,z;floata=2.0;
z=y%x/a;
则执行后,z中的值是()
A)4
B)3.0
C)0
D)0.5
35.在16位C编译系统上,若定义longa;,则能给a赋值40000的正确语句是()
A)a=20000+20000;
B)a=4000*10;
C)a=30000+10000;
D)a=4000L*10L;
36.在下列4个选项中,均属于C语言不合法标识符的是()
A)include
B)c.2
C)na
D)PI
37.下列有关格式输入函数scanf的叙述中正确的是()
A)输入项可以是C语言中规定的任何变量,并且在任何变量前必须加地址符号“&”
B)可以只有格式控制项,没有地址列表项
C)在输入数据时,必须规定精度。
如:
scanf("%4.2f",&d);
D)当输入数据时,必须指明变量地址
38.有以下程序:
main()
{inty=3,x=3,z=1;
printf("%d%d\n",(++x,y++),z+2);
}
执行后的输出结果是()
A)34
B)42
C)43
D)33
39.C语言提供的合法关键字是()
A)swicth
B)cher
C)Case
D)default
40.下列选项中不属于C语言数据类型的是()
A)整型
B)逻辑型
C)双精度型
D)枚举型
答案:
31.B 32.B 33.D 34.C 35.D 36.B 37.D 38.D 39.D 40.B
41.已有定义语句:
intx=3,y=0,z=0;,则值为0的表达式是()
A)x&&y
B)x||z
C)x||z+2&&y-z
D)!
((xz||y)
42.能正确表示代数式3xn2x-1的C语言表达式是()
A)3*x^n/(2*x-1)
B)3*x**n/(2*x-1)
C)3*pow(x,n)*(1/(2*x-1))
D)3*pow(n,x)/(2*x-1)
43.若int类型数据占两个字节,则下列语句
intk=-1;
printf("%d,%u\n",k,k);
的输出为()
A)-1,-1
B)-1,32767
C)-1,32768
D)-1,65535
44.下列常数中,不合法的C常量是()
A)-0x3b1
B)123e+2.3
C)′}′
D)6e+7
45.如果inti=3,则k=(++i)+(++i)+(i++)执行过后k的值为,i的值为。
()
A)15,6
B)12,5
C)18,6
D)15,5
46.以下有四组用户标识符,其中合法的一组是()
A)For
-sub
Case
B)4d
DO
Size
C)f2_G3
IF
abc
D)WORD
void
define
47.以下非法的赋值语句是()
A)n=(i=2,++i)
B)j++
C)++(i+1)
D)x=j>0
48.有下列程序
main()
{doubled;floatf;longl;inti;
i=f=l=d=20/3;
printf("%d%ld%f%f\n",i,l,f,d);
}
程序运行后的输出结果是(小数点后只写1位)()
A)666.06.0
B)666.76.7
C)666.06.7
D)666.76.0
49.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量′\101′是()
A)字符A
B)字符a
C)字符e
D)非法的常量
40.若变量已正确说明为float类型,要通过语句scanf("%f%f%f",&a,&b,&c);给a赋予10.0,b赋予22.0,c赋予33.0,不正确的输入形式是()
A)10<回车>
22<回车>
33<回车>
B)10.0,22.0,33.0<回车>
C)10.0<回车>
22.033.0<回车>
D)1022<回车>
33<回车>
答案:
41.A42.C 43.D 44.B 45.A 46.C 47.C 48.A 49.A 50.B
51.以下叙述中正确的是()
A)C程序由函数和过程组成
B)C程序由主函数组成
C)C程序由函数组成
D)C程序中,主函数必须放在其他函数之前
52.下列运算符中,不属于关系运算符的是()
A)<
B)>=
C)==
D)!
53.下列属于合法的C语言无符号短整型常数的选项是()
A)-2
B)65536
C)123L
D)50000
54.设a,b均为float型变量,则以下非法的赋值语句是()
A)b=(a/5)/8;
B)++a
C)a=1.0,b=2.0,
D)a+=3;
55.设有如下变量定义:
doublea=3.500000;floatb=2.5;intm=2,n=3;
则表达式“(float)(m+n)/2+(int)a%(int)b”的值是()
A)2.5
B)3.5
C)4.5
D)表达式不正确
56.先用以下语句定义字符型变量:
charc;
然后要将字符a赋给变量c,则下列语句中正确的是()
A)c=′a′;
B)c="a";
C)c="97";
D)c=′97′
57.设有语句chara=′\72′;,则变量a()
A)包含1个字符
B)包含2个字符
C)包含3个字符
D)说明不合法
58.以下叙述中正确的是()
A)C程序中,赋值运算符的优先级最低
B)若a是实型变量,C程序中允许进行以下赋值:
a=10,因此,实型变量中允许存放整型数
C)若a和b类型相同,在执行了赋值a=b后b中的值将放入a中,b中的值将丢失
D)在C程序中,除号运算符“/”两边的类型相同时才能进行相除运算
59.已有定义:
doublex;inti;,能正确给x赋70000.0的表达式是()
A)x=7000*10
B)x=70000
C)x=35000+35000
D)i=700,x=i*100
60.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为()
A)a<>0
B)!
a
C)a=0
D)a
51.C 52.D 53.D 54.C 55.B 56.A 57.A 58.D 59.B 60.D
61.下列说法正确的是()
A)在执行C程序时不是从main函数开始的
B)C程序书写格式严格限制,一行内必须写一个语句
C)C程序书写格式自由,一个语句可以分写在多行上
D)C程序书写格式严格限制,一行内必须写一个语句,并要有行号
62.C语言中最简单的数据类型包括()
A)整型、实型、逻辑型
B)整型、实型、字符型
C)整型、字符型、逻辑型
D)整型、实型、逻辑型、字符型
63.在以下一组运算符中,优先级最高的运算符是()
A)<=
B)=
C)%
D)&&
64.下列叙述中,正确的一条是()
A)语句“goto12;”是合法的
B)for(;;)语句相当于while
(1)语句
C)if(表达式)语句中,表达式的类型只限于逻辑表达式
D)break语句可用于程序的任何地方,以终止程序的执行
65.设inta=12,则执行完语句a+=a-=a*a后,a的值是()
A)552
B)264
C)144
D)-264
66.下列选项中均属于C语言合法的标识符的是()
A)Int
B)_3ab
C)3a
D)WORD
#subFORprintfauto
breakLonga_binclude
67若有如下变量定义并赋值:
inta=1,b=2,c=3,k;floatf=2.5,e;doubled=2.4,g;
则下列符合C语言语法的表达式是()
A)e=c*=a+=d*f%b
B)(k=a+b,b*f++,k%c)
C)g=a+f*c=5
D)x=double(b)
68.设x是int型变量,则计算表达式“x=25/3%3”的值是()
A)0
B)1
C)2
D)非法
69.以下能正确表示x在-5到-1或5到1范围(含5和1)内,值为“真”的表达式是()
A)(x>=-5)||(x<=-1)&&(x<=5)&&(x>=1)
B)!
(x>=-5||x<=-1&&x<=5||x>=1)
C)x<-5&&x>-1||x<1&&x>5
D)(x<-5)||(x>-1&&x<1)||(x>5)
70.若int类型数据占两个字节,则下列语句的输出结果为()
intx=-1;
printf("%u\n",x);
A)-1
B)32767
C)65535
D)65536
答案:
61.C 62.B 63.C 64.B 65.D 66.B 67.B 68.C 69.A 70.C
71.C语言程序的基本单位是()
A)函数
B)过程
C)字符
D)语句
72.下列正确的变量声明是()
A)intm;n;k;
B)unsignedintm,n,k;
C)doubleintm,n,k;
D)intm,n,k
73.已知大写字母B的ASCII码值是66,小写字母b的ASCII码值是98,则用八进制表示的字符常量′\142′是()
A)字符B
B)字符b
C)字符a
D)非法的常量
74.以下叙述中错误的是()
A)在C程序中,APH和aph是两个不同的变量
B)C程序中的变量,代表内存中的一个存储单元,它的值可以根据需要随时修改
C)在C程序中,无论是整数还是实数,都能准确无误地表示
D)在C程序中,一个正整数可以用十进制、八进制和十六进制的形式来表示
75.设a、b和c都是int型变量,且a=3,b=4,c=5,则下列值为0的表达式是()
A)′a′&&′b′
B)a<=b
C)a||b+c&&bc
D)!
((a
c||1)
76.以下叙述中正确的是()
A)输入项可以是一个实型常量,如scanf("%f",3.5);
B)只有格式控制,没有输入项,也能正确输入数据到内存,例如:
scanf("a=%d,b=%d");
C)当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:
scanf("%4.2f",&f)
D)当输入数据时,必须指明变量地址,例如:
scanf("%f",&f);
77.有以下程序
main()
{intx=10,y=10;printf("%d%d\n",x--,--y);}
程序运行后的输出结果是()
A)1010
B)99
C)910
D)109
78.C语言中各种基本数据类型的存储空间长度排列为()
A)char≤long≤int≤float≤double
B)double≤float≤long≤int≤char
C)char≤int≤long≤float≤double
D)float≤int≤long≤char≤double
79.设有如下定义
intx=10,y=3,z;
则语句
printf("%d\n",z=(x%y,x/y));
的输出结果是()
A)3
B)0
C)4
D)1
80.下述语句中,中的if语句语法是错误的。
()
A)if(x>y);
B)if(x==y)x+=y;
C)if(x!
=y)scanf("%d",&x)elsescanf("%d",&y);
D)if(x
参考答案:
71.A 72.B 73.B 74.C 75.D 76.D 77.D 78.C 79.A 80.C
81.下列选项中属于C语言构造类型的是()
A)指针类型
B)空类型
C)枚举类型
D)数组类型
82.表达式(double)(20/3)的值为()
A)6
B)6.0
C)2
D)3
83.设有定义:
longx=123456L;,则以下能够正确输出变量x值的语句是()
A)printf("x=%d\n",x);
B)printf("x=%ld\n",x);
C)printf("x=%8dL\n",x);
D)printf("x=%LD\n",x);
84.下列不正确的表达式是()
A)a>b>c
B)c--,++b,a+=1
C)a=c+b>n-m=k
D)p++
85.以下选项中非法的字符串常量是()
A)""
B)"\X0\011"
C)"\\"\t"
D)"\n\007\n"
86.若有说明语句“inta;floatb;”,以下输入语句正确的是()
A)scanf("%f%f",&a,&b);
B)scanf("%f%d",&a,&b);
C)scanf("%d,%f",&a,&b);
D)scanf("%6.2f%6.2f",&a,&b);
87.若有如下定义并赋值:
charch=′a′,a;
则执行语句“printf("%d",a=ch+2.6);”后的输出结果是()
A)c
B)d
C)99
D)100
88.若有如下程序:
main()
{intm=-1;
printf("%d,%u,%o,%x",m,m,m,m);}
则程序运行后的输出结果是()
A)-1,65535,177777,ffff
B)-1,-1,177777,fffe
C)-1,1,177777,ffff
D)-1,65535,177776,fffe
89.若有以下说明:
inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c=′a′,d,g;
则数值为4的表达式是()
A)a[g-c]
B)a[4]
C)a[′d′-′c′]
D)a[′d′-c]
90.下列if语句非法的是()
A)if(a=b)x=1;
B)if(!
3.9)
C)if(′a′&&x==y)y++;
D)if(x>y)scanf("%f",&y)elsescanf("%f",&x);
答案:
81.D 82.B 83.B 84.C 85.C 86.C 87.C 88.A 89.D 90.D
91.用C语言编写的代码程序()
A)可立即执行
B)是一个源程序
C)经过编译即可执行
D)经过编译解释才能执行
92.结构化程序由3种基本结构组成,3种基本结构组成的算法()
A)可以完成任何复杂的任务
B)只能完成部分复杂的任务
C)只能完成符合结构化的任务
D)只能完成一些简单的任务
93.以下定义语句中正确的是()
A)chara=′A′b=′B′;
B)floata=b=10.0;
C)inta=10,*b=&a;
D)float*a,b=&a;
94.下列选择中,不能用作标识符的是()
A)_1234_
B)_1_2
C)int_2_
D)2_int_
95.有以下定义语句
doublea,b;intw;longc;
若各变量已正确赋值,则下列选择中正确的表达式是()
A)a=a+b=b++
B)w%((int)a+b)
C)(c+w)%(int)a
D)w=a==b
96.以下程序的输出结果是()
main()
{intm=3,n=4,x;
x=-m++;
x=x+8/++n;
printf("%d\n",x);
}
A)3
B)5
C)-1
D)-2
97.以下程序的输出结果是()
main()
{chara=′a′,b;
printf("%c,",++a);
printf("%c\n",b=a++);
}
A)b,b
B)b,c
C)a,b
D)a,c
98.以下程序的输出结果是()
main()
{intm=0256,n=256;
printf("%o%o\n",m,n);
}
A)02560400
B)0256256
C)25640
D)400400
题
99.以下程序的输出结果是()
main()
{inta=666,b=888;
printf("%d\n",a,b);
}
A)错误信息
B)666
C)888
D)666,888
100.以下程序的输出结果是()
main()
{inti;
for(i=0;i<3;i++)
switch(i){
case0:
printf("%d",i);
case2:
printf("%d",i);
default:
printf("%d",i);
}
}
A)022111
B)021021
C)000122
D)012
答案:
91.B 92.A 93.C 94.D 95.C 96.D 97.A 98.