文档介绍:该【C语言题库及答案选择题 】是由【读书之乐】上传分享,文档一共【43】页,该文档可以免费在线阅读,需要了解更多关于【C语言题库及答案选择题 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:.
C语言题库(选择题)
()。
,可用作C标识符的一组字符序列是()。
,sum,average,_above
,day,lotus_1,2day
C.#md,&12x,month,student_n!
,r_1_2,name,_st_1
,不能作为合法的C用户定义标识符的是()。
,不正确的数值或字符常量是()。
,不正确的八进制数或十六进制数是()。
.-
,正确的赋值语句是()。
=1,b=++=b=5;=int(x)
,优先级最高的运算符是()。
A.?:B.++C.&&D.,
,能代表逻辑值“真”的是()。
,正确的是()。
:abc;;b;c;;z;,z;
,不可用作C语言标识符的是()。
.#
()。
。
,APH和aph是两个不同的变量。
,在执行了赋值语句a=b;后b中的值将放入a中,b中的
值不变。
,对于整型变量只能输入整型值;对于实型变量只能输入实
型值。
,不能作为合法的C用户定义标识符的是()。
,不能作为合法的C用户定义标识符的是()。
,不能作为合法的C用户定义标识符的是()。
,不正确的数值或字符常量是()。
,不正确的数值或字符常量是()。
,优先级最高的运算符是()。
-1-
:.
A.*=B.>=C.(类型)D.+
,优先级最高的运算符是()。
A.||B.%C.!D.==
,优先级最高的运算符是()。
A.=B.!=C.*(乘号)D.()
()。
,赋值运算符的优先级最低
,j++;是一条赋值语句
#include和#define均不是C语句
,int类型数据占2个字节,则long类型数据占()。
,int类型数据占2个字节,则short类型数据占()。
,double类型数据占()。
,char类型数据占()。
,int类型数据占2个字节,则unsigned类型数据占()。
()。
main()
{charc1=97,c2=98;
printf("%d%c",c1,c2);
}
()。
y=10;x=y++;
=10,y==11,y==10,y==11,y=10
,为字符串常量的是()。
."house".$abc
,然后要将字符a赋给c,则下列语句中正确的是
='a';="a";="97";='97'
()。
main()
{intj;
j=3;
printf("%d,",++j);
printf("%d",j++);
}
,,,,4
=12,且a定义为整型变量。执行语句a+=a-=a*=a;后a的值为()。
,不能使表达式(year%4==0&&year%100!=0)
-2-
:.
||year%400==0的值为“真”的数据是()。
,不属于关系运算符的是()。
A.<B.>C.>=D.!
,表达式:a=2,b=5,a>b?a++:b++,a+b的值是()。
()。
=1,b=2B.++j;=b=5;=(a=3,6*5);
()。
++;=j=5;=2*4,k*4;=float(j);
,其输出结果是()。
main()
{inta=9;
a+=a-=a+a;
printf("%d\n",a);
}
.-18D.-9
()。
printf("%d\n",(int)(+)/3);
()。
main()
{inta=7,b=5;
printf("%d\n",b=b/a);
}
()。
main()
{inta=011;
printf("%d\n",++a);
}
()。
main()
{
printf("%d\n",null);
}
.-
,则下列语句的输出为()。
intk=-1;printf("%d,%u\n",k,k);
A.-1,-1B.-132,767C.-132,768D.-165,535
,g均为int型变量,则下列语句的输出为()。
k=017;g=111;printf("%d\t",++k);printf("%x\n",g++);
-3-
:.
,则以下程序段的执行结果是()。
k=-8567;printf("|%06D|\n",k);
,输出无定值
|%06D|
|0-8567|
|-8567|
,k为int型变量(已知字符a的ASCII十进制代码为97),
则以下程序段的执行结果是()。
ch='a';k=12;printf("%x,%o,",ch,ch,k);printf("k=%%d\n",k);
,输出无定值
,输出为零值或不定值
,141,k=%d
,141,k=%12
:chars='\092';则该语句()。
,s的值不确定
,b是unsigned型变量,以下输入语句中合法的是()。
("%%d",&a,&b);("%f%n",&a,&b);
("%f%3o",&a,&b);("%f%f",&a,&b);
,则执行下列语句后的输出结果为()。
chara='a';a--;
printf("%d,%c\n",a+'2'-'0',a+'3'-'0');
,--运算不合法,故有语法错
,,输出无定值
()。
main()
{intm=7,n=4;
floata=,b=,x;
x=m/2+n*a/b+1/2;
printf("%f\n",x);
}
(M)?(a++):(a--),则其中表达式M()。
(M==0)(M==1)(M!=0)(M!=1)等价
()。
main()
{inti,j,k,a=3,b=2;
i=(--a==b++)?--a:++b;
j=a++;k=b;
printf("i=%d,j=%d,k=%d\n",i,j,k);
}
=2,j=1,k==1,j=1,k==4,j=2,k==1,j=1,k=3
-4-
:.
,b为整型变量,二者均不为0,以下关系表达式中恒成立的是()。
*b/a*b==*b/a==*b+a%b==*b==a
,在函数中对于整型或指针可以使用()型的变量。
()。
main()
{inti=010,j=10;
printf("%d,%d\n",++i,j--);
}
,,,,9
()的排列是正确的。
:!,&&,||,算术运算符,赋值运算符
:!,算术运算符,关系运算符,&&,||,赋值运算符
:算术运算符,关系运算符,赋值运算符,!,&&,||
:算术运算符,关系运算符,!,&&,||,赋值运算符
,初值为12,执行完语句a+=a-=a*a后,a的值是()。
.-264
,sizeof(x),sizeof(y),sizeof(a),sizeof(b)
在微机上的值分别为()。
charx=65;
floaty=;
inta=100;
doubleb=;
,2,2,,2,2,,4,2,,4,2,8
,b,c,然后执行b=a、c='b'+b,则b,c的值是()。
longa=0xffffff;
intb;charc;
.-1和98C.-
,a和b的值分别为()。
inta,b;
a=1+'a';
b=2+7%-4-'A';
A.-63,-,-,-,78
()。
()。
main()
{floatx=;
inti;
i=(int)x;
printf("x=%f,i=%d\n",x,i);
}
=,i==3,i==,i==3i=
-5-
:.
,表达式z+=x>y?++x:++y的值为()。
intx=1,y=2,z=3;
()。
main()
{
inti=1,sum=0;
while(i<10)sum=sum+1;i++;
printf("i=%d,sum=%d",i,sum);
}
=10,sum==9,sum==2,sum=
()。
main()
{intn;
for(n=1;n<=10;n++)
{
if(n%3==0)continue;
printf("%d",n);
}
}
,if语句后的一对原括号中,用以决定分支的流程的表达式()。
,与do--while(E)语句中的(E)不等价的表达式是()。
A.(!E==0)B.(E>0||E<0)C.(E==0)D.(E!=0)
,下列程序段运行后x的值是()。
k1=1;
k2=2;
k3=3;
x=15;
if(!k1)x--;
elseif(k2)x=4;
elsex=3;
()。
intj=-1;
if(j<=1)printf("****\n");
elseprintf("%%%%\n");
A.****B.%%%%C.%%%%,执行不正确
()。
main()
-6-
:.
{intx=1,y=0,a=0,b=0;
switch(x)
{
case1:switch(y)
{
case0:a++;break;
case1:b++;break;
}
case2:a++;b++;break;
case3:a++;b++;break;
}
printf("a=%d,b=%d\n",a,b);
}
=1,b==2,b==1,b==2,b=2
,为了结束由while语句构成的循环,while后一对圆括号中表达
式的值应该为()。
()。
main()
{inty=10;
while(y--);
printf("y=%d\n",y);
}
===-1
,if与else的配对关系是()。
,则for循环语句
for(j=0,k=-1;k=1;j++,k++)printf("****\n");()。
,正确的是()。
[][4];[][];[][][5];[3][];
,正确的是()。
[]="China";
[];str="China";
[5],str2[]={"China"};str1=str2;
[],str2[];str2={"China"};strcpy(str1,str2);
()。
A.#definesize10charstr1[size],str2[size+2];
-7-
:.
[];
['10'];
=5;inta[n][n+2];
()。
[2][3]={1,2,3,4,5,6};
[2][3]={{1},{4,5}};
[][3]={{1},{4}};
[][]={{1,2,3},{4,5,6}};
,不正确的是()。
[2]={1,2};
[2]={'1','2'};
[2]={'1','2','3'};
[2]={'1'};
,程序运行结果为()。
main()
{staticchara[3];
scanf("%s",a);
printf("%c,%c",a[1],a[2]);
}
,,,
()。
,可以使用相同名字的变量
,可以在复合语句中定义变量,这些变量只在复合语句中有效
,下列正确的说法是()。
,下列正确的说法是()。
()。
,但函数的调用不可以嵌套
,但函数的调用可以嵌套
()。
-8-
:.
,若对函数类型未加显式说明,则函数的隐含说明类型为()。
,当调用函数时()。
,数组名被处理为()。
,正确的是()。
#标识的控制行都是预处理指令
,为编译词法和语法分析作
准备
,正确的是()。
,否则不能使用函数
()。
exce((v1,v2),(v3,v4,v5),v6);
()。
func((e1,e2),(e3,e4,e5));
()。
:函数调用作为语句
:函数调用作为函数表达式
:函数调用作为语句或函数表达式
:函数调用作为语句、函数表达式或函数参数
,输出结果是()。
main()
{a=45,b=27,c=0;
c=max(a,b);
printf("%d\n",c);
}
intmax(intx,inty)
{intz;
if(x>y)z=x;
elsez=y;
return(z);
-9-
:.
}
()。
main()
{inta=1,b=2,c=3,d=4,e=5;
printf("%d\n",func((a+b,b+c,c+a),(d+e)));
}
intfunc(intx,inty)
{
return(x+y);
}
()。
A.#
B.#defineS345
(intx,inty);{}
;
:
#defineP3
#defineS(a)P*a*a
main()
{intar;
ar=S(3+5);
printf("\n%d",ar);
}
,p1为整型指针变量,a为整型数组名,j为整型变量,下列赋值语句
中不正确的是()。
=&j,p=p1;=a;=&a[j];=10;
,a[10],*p=a;定义后,下列语句中合法的是()。
=p+2;=a[5];=a[2]+2;=&(j+2);
()。
,下列语句中说明指针变量p的正确语句是()。
=&x;*p=x;*p=&x;D.*p=*x;
()。
,不能用浮点数赋值
(*ptr)[M];其中标识符ptr是()。
-10-
:.
,每个元素都只能指向整型量
[5],*p=a;,下面选择中正确的赋值语句是()。
="abcd";="abcd";C.*p="abcd";D.*a="abcd";
,不能进行的操作是()。
=a;B.*p=a[0];=&a[0];=&a;
,则对a数组元素地址的正确引用是()。
inta[5],*p=a;
A.&a[5]+++D.&a
,则对a数组元素的非法引用是()。
inta[2][3],(*pt)[3];pt=a;
[0][0]B.*(pt+1)[2]C.*(pt[1]+2)D.*(a[0]+2)
()。
char*alp[]={"ABC","DEF","GHI"};intj;puts(alp[1]);
,若0<k<4,下列选项中对字符串的非法引用是()。
charstr[4][2]={"aaa","bbb","ccc","ddd"},*strp[4];
intj;
for(j=0;j<4;j++)
strp[j]=str[j];
[k][k]D.*strp
[][2]={{1,2},{3,4}};则*(a+1),*(*a+1)的含义分别为()。
,2B.&a[1][0],2C.&a[0][1],[0][0],4
:char*p1,*p2,*p3,*p4,ch;则不能正确赋值的程序语句为()。
=&ch;scanf("%c",p1);
=(char*)malloc(1);scanf("%c",p2);
C.*p3=getchar();
=&ch;*p4=getchar();
,系统分配给它的内存是()。
:structsk{inta;floatb;}data,*p;若要使p指向data中的
a域,正确的赋值语句是()。
=(structsk*)&;=(structsk*);
=&;D.*p=;
()。
={sum,mon,tue};
{sum=9,mon=-1,tue};
={"sum","mon","tue"};
{"sum","mon","tue"};
,枚举变量c1,c2的值依次是()。
enumcolor{red,yellow,blue=4,green,white}c1,c2;
c1=yellow;c2=white;
-11-
:.
printf("%d,%d\n",c1,c2);
,,,,6
,若p=&a,下列说法不正确的是()。
A.&*p==&aB.*&a==aC.(*p)++==a++D.*(p++)==a++
()。
main()
{chars[]="123",*p;
p=s;
printf("%c%c%c\n",*p++,*p++,*p++);
}
()。