c语言单选题.docx
《c语言单选题.docx》由会员分享,可在线阅读,更多相关《c语言单选题.docx(86页珍藏版)》请在冰豆网上搜索。
c语言单选题
"1、C语言源程序的基本单位是()。
A)过程
B)函数
C)子程序
D)标识符
答案:
B"
"2、下列字符序列中,可用作C标识符的一组字符序列是()。
A)S.b,sum,average,_above
B)class,day,lotus_1,2day
C)#md,&12x,month,student_n!
D)D56,r_1_2,name,_st_1
答案:
D"
"3、以下标识符中,不能作为合法的C用户定义标识符的是()。
A)a3_b3
B)void
C)_123
D)IF
答案:
B"
"4、以下数据中,不正确的数值或字符常量是()。
A)0
B)5L
C)o13
D)9861
答案:
C"
"5、以下的选择中,正确的赋值语句是()。
A)a=1,b=2
B)j++
C)a=b=5;
D)y=int(x)
答案:
C"
"6、以下运算符中,优先级最高的运算符是()。
A)?
:
B)++
C)&&
D),
答案:
B"
"7、在C语言中,能代表逻辑值“真”的是()。
A)True
B)大于0的数
C)非0整数
D)非0的数
答案:
D"
"8、下列变量说明语句中,正确的是()。
A)char:
abc;
B)chara;b;c;
C)intx;z;
D)intx,z;
答案:
D"
"9、下列字符序列中,不可用作C语言标识符的是()。
A)b70
B)#ab
C)symbol
D)a_1
答案:
B"
"10、以下不正确的叙述是()。
A)在C程序中所用的变量必须先定义后使用
B)程序中,APH和aph是两个不同的变量
C)若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变
D)当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值
答案:
D"
"11、以下标识符中,不能作为合法的C用户定义标识符的是()。
A)For
B)Printf
C)WORD
D)sizeof
答案:
D"
"12、以下标识符中,不能作为合法的C用户定义标识符的是()。
A)answer
B)to
C)signed
D)_if
答案:
C"
"13、以下标识符中,不能作为合法的C用户定义标识符的是()。
A)putchar
B)_double
C)_123
D)INT
答案:
A"
"14、以下数据中,不正确的数值或字符常量是()。
A)8.9e1.2
B)10
C)0xff00
D)82.5
答案:
A"
"15、以下数据中,不正确的数值或字符常量是()。
A)c
B)66
C)0xaa
D)50
答案:
A"
"16、以下运算符中,优先级最高的运算符是()。
A)*=
B)>=
C)(类型)
D)+
答案:
C"
"17、以下运算符中,优先级最高的运算符是()。
A)||
B)%
C)!
D)==
答案:
C"
"18、以下运算符中,优先级最高的运算符是()。
A)=
B)!
=
C)*(乘号)
D)()
答案:
D"
"19、以下叙述中不正确的是()。
A)一个好的程序应该有详尽的注释
B)在C程序中,赋值运算符的优先级最低
C)在C程序中,j++;是一条赋值语句
D)C程序中的#include和#define均不是C语句
答案:
B"
"20、设C语言中,int类型数据占2个字节,则long类型数据占()。
A)1个字节
B)2个字节
C)4个字节
D)8个字节
答案:
C"
"21、设C语言中,int类型数据占2个字节,则short类型数据占()。
A)1个字节
B)2个字节
C)4个字节
D)8个字节
答案:
B"
"22、C语言中,double类型数据占()。
A)1个字节
B)2个字节
C)4个字节
D)8个字节
答案:
D"
"23、C语言中,char类型数据占()。
A)1个字节
B)2个字节
C)4个字节
D)8个字节
答案:
A"
"24、设C语言中,int类型数据占2个字节,则unsigned类型数据占()。
A)1个字节
B)2个字节
C)4个字节
D)8个字节
答案:
B"
"25、下列程序的输出结果是()。
main()
{charc1=97,c2=98;
printf(""%d%c"",c1,c2);
}
A)9798
B)97b
C)a98
D)ab
答案:
B"
"26、执行下列语句后变量x和y的值是()。
y=10;x=y++;
A)x=10,y=10
B)x=11,y=11
C)x=10,y=11
D)x=11,y=10
答案:
C"
"27、下列数据中,为字符串常量的是()。
A)A
B)""house""
C)Howdoyoudo.
D)$abc
答案:
B"
"28、先用语句定义字符型变量c,然后要将字符a赋给c,则下列语句中正确的是()。
A)c='a';
B)c=""a"";
C)c=""97"";
D)C='97'
答案:
A"
"29、下列语句的结果是()。
main()
{intj;
j=3;
printf(""%d,"",++j);
printf(""%d"",j++);
}
A)3,3
B)3,4
C)4,3
D)4,4
答案:
D"
"30、设a=12,且a定义为整型变量。
执行语句a+=a-=a*=a;后a的值为()。
A)12
B)144
C)0
D)132
答案:
C"
"31、已知year为整型变量,不能使表达式(year%4==0&&year%100!
=0)
||year%400==0的值为“真”的数据是()。
A)1990
B)1992
C)1996
D)2000
答案:
A"
"32、下列运算符中,不属于关系运算符的是()。
A)<
B)>
C)>=
D)!
答案:
D"
"33、假设所有变量均为整型,表达式:
a=2,b=5,a>b?
a++:
b++,a+b的值
是()。
A)7
B)8
C)9
D)2
答案:
B"
"34、以下不符合C语言语法的赋值语句是()。
A)a=1,b=2
B)++j;
C)a=b=5;
D)y=(a=3,6*5);
答案:
A"
"35、以下不符合C语言语法的赋值语句是()。
A)j++;
B)j=j=5;
C)k=2*4,k*4;
D)y=float(j);
答案:
D"
"36、执行下列程序后,其输出结果是()。
main()
{inta=9;
a+=a-=a+a;
printf(""%d\n"",a);
}
A)18
B)9
C)-18
D)-9
答案:
C"
"37、下列语句的输出结果是()。
printf(""%d\n"",(int)(2.5+3.0)/3);
A)有语法错误不能通过编译
B)2
C)1
D)0
答案:
C"
"38、下列程序的输出结果是()。
main()
{inta=7,b=5;
printf(""%d\n"",b=b/a);
}
A)0
B)5
C)1
D)不确定值
答案:
A"
"39、下列程序的输出结果是()。
main()
{inta=011;
printf(""%d\n"",++a);
}
A)12
B)11
C)10
D)9
答案:
C"
"40、下列程序的输出结果是()。
main()
{
printf(""%d\n"",null);
}
A)0
B)变量无定义
C)-1
D)1
答案:
B"
"41、若int类型数据占两个字节,则下列语句的输出为()。
intk=-1;printf(""%d,%u\n"",k,k);
A)-1,-1
B)-1,32767
C)-1,32768
D)-1,65535
答案:
D"
"42、若k,g均为int型变量,则下列语句的输出为()。
k=017;g=111;printf(""%d\t"",++k);printf(""%x\n"",g++);
A)156f
B)1670
C)1571
D)166f
答案:
D"
"43、以下程序段的执行结果是()。
doublex;x=218.82631;printf(""%-6.2e\n"",x);
A)输出格式描述符的域宽不够,不能输出
B)输出为21.38e+01
C)输出为2.2e+02
D)输出为-2.14e2
答案:
C"
"44、若k为int型变量,则以下程序段的执行结果是()。
k=-8567;printf(""|%06D|\n"",k);
A)格式描述符不合法,输出无定值
B)输出为|%06D|
C)输出为|0-8567|
D)输出为|-8567|
答案:
B"
"45、若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),
则以下程序段的执行结果是()。
ch='a';k=12;printf(""%x,%o,"",ch,ch,k);printf(""k=%%d\n"",k);
A)因变量类型与格式描述符的类型不匹配,输出无定值
B)输出项与格式描述符个数不符,输出为零值或不定值
C)61,141,k=%d
D)61,141,k=%12
答案:
C"
"46、若有以下定义:
chars='\092';则该语句()。
A)使s的值包含1个字符
B)定义不合法,s的值不确定
C)使s的值包含4个字符
D)使s的值包含3个字符
答案:
B"
"47、若a是float型变量,b是unsigned型变量,以下输入语句中合法的是()。
A)scanf(""%6.2f%d"",&a,&b);
B)scanf(""%f%n"",&a,&b);
C)scanf(""%f%3o"",&a,&b);
D)scanf(""%f%f"",&a,&b);
答案:
C"
"48、已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为()。
chara='a';a--;
printf(""%d,%c\n"",a+'2'-'0',a+'3'-'0');
A)b,c
B)a--运算不合法,故有语法错
C)98,c
D)格式描述和输出项不匹配,输出无定值
答案:
C"
"49、下列程序的输出结果为()。
main()
{intm=7,n=4;
floata=38.4,b=6.4,x;
x=m/2+n*a/b+1/2;
printf(""%f\n"",x);
}
A)27.000000
B)27.500000
C)28.000000
D)28.500000
答案:
A"
"50、若给定条件表达式(M)?
(a++):
(a--),则其中表达式M()。
A)和(M==0)等价
B)和(M==1)等价
C)和(M!
=0)等价
D)和(M!
=1)等价
答案:
C"
"51、以下程序的输出结果是()。
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);
}
A)i=2,j=1,k=3
B)i=1,j=1,k=2
C)i=4,j=2,k=4
D)i=1,j=1,k=3
答案:
D"
"52、a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是()。
A)a*b/a*b==1
B)a/b*b/a==1
C)a/b*b+a%b==a
D)a/b*b==a
答案:
C"
"53、为了提高程序的运行速度,在函数中对于整型或指针可以使用()型的变量。
A)auto
B)register
C)static
D)extern
答案:
B"
"54、以下程序的输出结果为()。
main()
{inti=010,j=10;
printf(""%d,%d\n"",++i,j--);
}
A)11,10
B)9,10
C)010,9
D)10,9
答案:
B"
"55、C语言中以下几种运算符的优先次序()的排列是正确的。
A)由高到低为:
!
&&,||,算术运算符,赋值运算符
B)由高到低为:
!
算术运算符,关系运算符,&&,||,赋值运算符
C)由高到低为:
算术运算符,关系运算符,赋值运算符,!
&&,||
D)由高到低为:
算术运算符,关系运算符,!
&&,||,赋值运算符
答案:
B"
"56、设a为整型变量,初值为12,执行完语句a+=a-=a*a后,a的值是()。
A)552
B)144
C)264
D)-264
答案:
D"
"57、经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在
微机上的值分别为()。
charx=65;
floaty=7.3;
inta=100;
doubleb=4.5;
A)2,2,2,4
B)1,2,2,4
C)1,4,2,8
D)2,4,2,8
答案:
C"
"58、用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是()。
longa=0xffffff;
intb;charc;
A)0ffffff和0x61
B)-1和98
C)-1和97
D)指向同一地址
答案:
C"
"59、执行下列语句后,a和b的值分别为()。
inta,b;
a=1+'a';
b=2+7%-4-'A';
A)-63,-64
B)98,-60
C)1,-60
D)79,78
答案:
B"
"60、C语言中要求对变量作强制定义的主要理由是()。
A)便于移植
B)便于写文件
C)便于编辑预处理程序的处理
D)便于确定类型和分配空间
答案:
D"
"61、以下程序的输出结果是()。
main()
{floatx=3.6;
inti;
i=(int)x;
printf(""x=%f,i=%d\n"",x,i);
}
A)x=3.600000,i=4
B)x=3,i=3
C)x=3.600000,i=3
D)x=3i=3.600000
答案:
C"
"62、经过以下语句定义后,表达式z+=x>y?
++x:
++y的值为()。
intx=1,y=2,z=3;
A)2
B)3
C)6
D)5
答案:
C"
"63、以下程序的运行结果是()。
main()
{
inti=1,sum=0;
while(i<10)sum=sum+1;i++;
printf(""i=%d,sum=%d"",i,sum);
}
A)i=10,sum=9
B)i=9,sum=9
C)i=2,sum=1
D)运行出现错误
答案:
D"
"64、以下程序的运行结果是()。
main()
{intn;
for(n=1;n<=10;n++)
{
if(n%3==0)continue;
printf(""%d"",n);
}
}
A)12457810
B)369
C)12
D)1234567890
答案:
A"
"65、在C语言中,if语句后的一对原括号中,用以决定分支的流程的表
达式()。
A)只能用逻辑表达式
B)只能用关系表达式
C)只能用逻辑表达式或关系表达式
D)可用任意表达式
答案:
D"
"66、在以下给出的表达式中,与do--while(E)语句中的(E)不等价的
表达式是()。
A)(!
E==0)
B)(E>0||E<0)
C)(E==0)
D)(E!
=0)
答案:
C"
"67、假定所有变量均已正确定义,下列程序段运行后x的值是()。
k1=1;
k2=2;
k3=3;
x=15;
if(!
k1)x--;
elseif(k2)x=4;
elsex=3;
A)14
B)4
C)15
D)3
答案:
B"
"68、执行下列语句后的输出为()。
intj=-1;
if(j<=1)printf(""****\n"");
elseprintf(""%%%%\n"");
A)****
B)%%%%
C)%%%%c
D)有错,执行不正确
答案:
A"
"69、下列程序的输出结果是()。
main()
{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);
}
A)a=1,b=0
B)a=2,b=1
C)a=1,b=1
D)a=2,b=2
答案:
B"
"70、在C语言中,为了结束由while语句构成的循环,while后一对圆括号
中表达式的值应该为()。
A)0
B)1
C)True
D)非0
答案:
A"
"71、下列程序的输出为()。
main()
{inty=10;
while(y--);
printf(""y=%d\n"",y);
}
A)y=0
B)while构成无限循环
C)y=1
D)y=-1
答案:
D"
"72、C语言的if语句嵌套时,if与else的配对关系是()。
A)每个else总是与它上面的最近的if配对
B)每个else总是与最外层的if配对
C)每个else与if的配对是任意的
D)每个else总是与它上面的if配对
答案:
A"
"73、设j和k都是int类型,则for循环语句
for(j=0,k=-1;k=1;j++,k++)printf(""****\n"");()。
A)循环结束的条件不合法
B)是无限循环
C)循环体一次也不执行
D)循环体只执行一次
答案:
B"
"74、下列数组说明中,正确的是()。
A)intarray[][4];
B)intarray[][];
C)intarray[][][5];
D)intarray[3][];
答案:
A"
"75、下列数组说明中,正确的是()。
A)staticcharstr[]=""China"";
B)staticcharstr[];str=""China"";
C)staticcharstr1[5],str2[]={""China""};str1=str2;
D)staticcharstr1[],str2[];str2={""China""};strcpy(str1,str2);
答案:
A"
"76、下列定义数组的语句中正确的是()。
A)#definesize10charstr1[size],str2[size+2];
B)charstr[];
C)intnum['10'];
D)intn=5;inta[n][n+2];
答案:
A"
"77、下列定义数组的语句中不正确的是()。
A)staticinta[2][3]={1,2,3,4,5,6};
B)staticinta[2][3]={{1},{4,5}};
C)staticinta[][3]={{1},{4}};
D)staticinta[][]={{1,2,3},{4,5,6}};
答案:
D"
"78、下列语句中,不正确的是()。
A)staticchara[2]={1,2};
B)staticinta[2]={'1','2'};
C)staticchara[2]={'1','2','3'};
D)staticchara[2]={'1'};
答案:
C"
"79、若输入ab,程序运行结果为()。
main()
{staticchara[3];
scanf(""%s"",a);
printf(""%c,%c"",a[1],a[2]);
}
A)a,b
B)a,
C)b,
D)程序出错
答案:
C"
"80、下列说法不正确的是()。
A)主函数main中定义的变量在整个文件或程序中有效
B)不同函数中,可以使用相同名字的变量
C)形式参数是局部变量
D)在一个函数内部,可以在复合语句中定义变量,这些变量只在复合语句中有效
答案:
A"
"81、关于return语句,下列正确的说法是()。
A)不能在主函数中出现且在其他函数中均可出现
B)必须在每个函数中出现
C)可以在同一个函数中出现多次
D)只能在除主函数之外的函数中出现一次
答案:
C"
"82、在C语言的函数中,下列正确的说法是()。
A)必须有形参
B)形参必须是变量名
C)可以有也可以没有形参
D)数组名不能作形参
答案:
C"
"83、在C语言程序中()。
A)函数的定义可以嵌套,但函数的调用不可以嵌套
B)函数的定义不可以嵌套,但函数的调用可以嵌套
C)函数的定义和函数调用均可以嵌套
D)函数的定义和函数调用不可以嵌套
答案:
B"
"84、C语言执行程序的开始执行点是()。
A)程序中第一条可以执行语言
B)程序中第一个函数
C)程序中的main函数
D)包含文件中的第一个函数
答案:
C"
"85、C语言程序中,若对函数类型未加显式说明,则函数的隐含说明类型为()。
A)void
B)double
C)int
D)char
答案:
C"
"86、C语言程序中,当调