齐齐哈尔大学c语言选择题库.docx
《齐齐哈尔大学c语言选择题库.docx》由会员分享,可在线阅读,更多相关《齐齐哈尔大学c语言选择题库.docx(57页珍藏版)》请在冰豆网上搜索。
齐齐哈尔大学c语言选择题库
c语言选择题库
1C语言源程序的基本单位是()。
A过程B函数C子程序D标识符B
2下列字符序列中,可用作C标识符的一组字符序列是()。
AS.b,sum,average,_aboveBclass,day,lotus_1,2dayC#md,&12x,month,student_n!
DD56,r_1_2,name,_st_1D
3以下标识符中,不能作为合法的C用户定义标识符的是()。
Aa3_b3BvoidC_123Da1B
4以下数据中,不正确的数值或字符常量是()。
A0B5LCW13D9861C
5以下数值中,不正确的八进制数或十六进制数是()。
A0x16B16C-16D0xaaaaC
6以下的选择中,正确的赋值语句是()。
Aa=1,b=2Bj++Ca=b=5;Dy==(x)C
7以下运算符中,优先级最高的运算符是()。
A?
:
B++C&&D,B
8在C语言中,能代表逻辑值“真”的是()。
ATrueB等于0的数C“真”D非0的数D
9下列变量说明语句中,正确的是()。
Achar:
abc;Bchara;b;c;Cintx;z;Dintx,z;D
10下列字符序列中,不可用作C语言标识符的是()。
Ab70B#abCsymbolDa_1B
11以下不正确的叙述是()。
A在C程序中所用的变量必须先定义后使用B程序中,APH和aph是两个不同的变量C若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变D当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值D
12以下标识符中,不能作为合法的C用户自定义标识符的是()。
AforB_printCWORDDsizA
13以下标识符中,不能作为合法的C用户自定义标识符的是()。
AanswerBtoCsignedD_ifC
14以下标识符中,不能作为合法的C用户自定义标识符的是()。
AputcharB_doubleC_123DINTA
15以下数据中,不正确的数值或字符常量是()。
A8.9e1.2B10C0xff00D82.5A
16以下数据中,不正确的数值或字符常量是()。
AcB66C0xaaD50A
17以下运算符中,优先级最高的运算符是()。
A*=B>=C(类型)D+C
18以下运算符中,优先级最高的运算符是()。
A||B%C!
D==C
19以下运算符中,优先级最高的运算符是()。
A=B!
=C*(乘号)D()D
20以下叙述中不正确的是()。
A一个好的程序应该有详尽的注释B在C程序中,赋值运算符的优先级最低C在C程序中,j++;是一条赋值语句DC程序中的#include和#define均不是C语句B
21设C语言中,int类型数据占2个字节,则long类型数据占()。
A1个字节B2个字节C4个字节D8个字节C
22设C语言中,int类型数据占2个字节,则short类型数据占()。
A1个字节B2个字节C4个字节D8个字节B
23C语言中,double类型数据占()。
A1个字节B2个字节C4个字节D8个字节D
24C语言中,char类型数据占()。
A1个字节B2个字节C4个字节D8个字节A
25设C语言中,int类型数据占2个字节,则unsigned类型数据占()。
A1个字节B2个字节C4个字节D8个字节B
26"下列程序的输出结果是()。
main()
{charc1=97,c2=98;
printf(""%d%c"",c1,c2);
}"A9798B97bCa98DabB
27"执行下列语句后变量x和y的值是()。
y=10;x=y++;"Ax=10,y=10Bx=11,y=11Cx=10,y=11Dx=11,y=10C
28下列数据中,为字符串常量的是()。
AAB"""house"""CHowdoyoudo.D$abcB
29先用语句定义字符型变量c,然后要将字符a赋给c,则下列语句中正确的是()。
Ac='a';Bc="a";Cc="97";DC='97'A
30"下列语句的结果是()。
main()
{intj;
j=3;
printf(""%d,"",++j);
printf(""%d"",j++);
}"A3,3B3,4C4,3D4,4D
31设a=12,且a定义为整型变量。
执行语句a+=a-=a*=a;后a的值为()。
A12B144C0D132C
32"已知year为整型变量,不能使表达式(year%4==0&&year%100!
=0)
||year%400==0的值为真的数据是()。
"A1990B1992C1996D2000A
33下列运算符中,不属于关系运算符的是()。
AC>=D!
D
34"假设所有变量均为整型,表达式:
a=2,b=5,a>b?
a++:
b++,a+b的值
是()。
"A7B8C9D2B
35以下不符合C语言语法的赋值语句是()。
Aa=1,b=2B++j;Ca=5;b=5;Dy=(a=3,6*5);A
36以下不符合C语言语法的赋值语句是()。
Aj++;Bj=j=5;Ck=2*4,k*4;Dy=float(j);D
37"执行下列程序后,其输出结果是()。
main()
{inta=9;
a+=a-=a+a;
printf(""%d\n"",a);
}"A18B9C-18D-9C
38"下列语句的输出结果是()。
printf(""%d\n"",(int)(2.5+3.0)/3);"A有语法错误不能通过编译B2C1D0C
39"下列程序的输出结果是()。
main()
{inta=7,b=5;
printf(""%d\n"",b=b/a);
}"A0B5C1D不确定值A
40"下列程序的输出结果是()。
main()
{inta=011;
printf(""%d\n"",++a);
}"A12B11C10D9C
41"若k,g均为int型变量,则下列语句的输出为()。
k=017;g=111;printf(""%d\t"",++k);printf(""%x\n"",g++);"A156fB1670C1571D166fD
42"以下程序段的执行结果是()。
doublex;x=218.82631;printf(""%-6.2e\n"",x);"A输出格式描述符的域宽不够,不能输出B输出为21.38e+01C输出为2.2e+02D输出为-2.14e2C
43"若k为int型变量,则以下程序段的执行结果是()。
k=-8567;printf(""|%06D|\n"",k);"A格式描述符不合法,输出无定值B输出为|%06D|C输出为|0-8567|D输出为|-8567|B
44"若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),
则以下程序段的执行结果是()。
ch='a';k=12;printf(""%x,%o,"",ch,ch,k);printf(""k=%%d\n"",k);"A因变量类型与格式描述符的类型不匹配,输出无定值B输出项与格式描述符个数不符,输出为零值或不定值C61,141,k=%dD61,141,k=%12C
45若有以下定义:
chars='\092';则该语句()。
A使s的值包含1个字符B定义不合法,s的值不确定C使s的值包含4个字符D使s的值包含3个字符B
46若a是float型变量,b是unsignedint型变量,以下输入语句中合法的是()。
Ascanf("%6.2f%d",&a,&b);Bscanf("%f%n",&a,&b);Cscanf("%f%3o",&a,&b);Dscanf("%f%f",&a,&b);C
47"已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为()。
chara='a';a--;
printf(""%d,%c\n"",a+'2'-'0',a+'3'-'0');"Ab,cBa--运算不合法,故有语法错C98,cD格式描述和输出项不匹配,输出无定值C
48"下列程序的输出结果为()。
main()
{intm=7,n=4;
floata=38.4,b=6.4,x;
x=m/2+n*a/b+1/2;
printf(""%f\n"",x);
}"A27.000000B27.500000C28.000000D28.500000A
49若给定条件表达式(M)?
(a++):
(a--),则其中表达式M()。
A和(M==0)等价B和(M==1)等价C和(M!
=0)等价D和(M!
=1)等价C
50"以下程序的输出结果是()。
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);
}"Ai=2,j=1,k=3Bi=1,j=1,k=2Ci=4,j=2,k=4Di=1,j=1,k=3D
51a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是()。
Aa*b/a*b==1Ba/b*b/a==1Ca/b*b+a%b==aDa/b*b==aC
52为了提高程序的运行速度,在函数中对于整型或指针可以使用()型的变量。
AautoBregisterCstaticDexternB
53"以下程序的输出结果为()。
main()
{inti=8,j=10;
printf(""%d,%d\n"",++i,j--);
}"A11,10B9,10C010,9D10,9B
54C语言中以下几种运算符的优先次序()的排列是正确的。
A由高到低为:
!
&&,||,算术运算符,赋值运算符B由高到低为:
!
算术运算符,关系运算符,&&,||,赋值运算符C由高到低为:
算术运算符,关系运算符,赋值运算符,!
&&,||D由高到低为:
算术运算符,关系运算符,!
&&,||,赋值运算符B
55设a为整型变量,初值为12,执行完语句a+=a-=a*a后,a的值是()。
A552B144C264D-264D
56"经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在
微机上的值分别为()。
charx=65;
floaty=7.3;
inta=100;
doubleb=4.5;"A2,2,2,4B1,2,2,4C1,4,2,8D2,4,2,8C
57"用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是()。
longa=0xffffff;
intb;charc;"A0ffffff和0x61B-1和98C-1和97D指向同一地址C
58"执行下列语句后,a和b的值分别为()。
inta,b;
a=1+'a';
b=2+7%4-'A';"A-63,-64B98,-60C1,-60D79,78B
59C语言中要求对变量作强制定义的主要理由是()。
A便于移植B便于写文件C便于编辑预处理程序的处理D便于确定类型和分配空间D
60"以下程序的输出结果是()。
main()
{floatx=3.6;
inti;
i=(int)x;
printf(""x=%f,i=%d\n"",x,i);
}"Ax=3.600000,i=4Bx=3,i=3Cx=3.600000,i=3Dx=3i=3.600000C
61"经过以下语句定义后,表达式z+=x>y?
++x:
++y的值为()。
intx=1,y=2,z=3;"A2B3C6D5C
62"以下程序的运行结果是()。
main()
{
inti=1,sum=0;
while(i<10)sum=sum+1;i++;
printf(""i=%d,sum=%d"",i,sum);
}"Ai=10,sum=9Bi=9,sum=9Ci=2,sum=1D运行出现错误D
63"以下程序的运行结果是()。
main()
{intn;
for(n=1;n<=10;n++)
{
if(n%3==0)continue;
printf(""%d"",n);
}
}"A12457810B369C12D1234567890A
64"在C语言中,if语句后的一对原括号中,用以决定分支的流程的表
达式()。
"A只能用逻辑表达式B只能用关系表达式C只能用逻辑表达式或关系表达式D可用任意表达式D
65"在以下给出的表达式中,与do--while(E)语句中的(E)不等价的
表达式是()。
"A(!
E==0)B(E>0||E<0)C(E==0)D(E!
=0)C
66"假定所有变量均已正确定义,下列程序段运行后x的值是()。
k1=1;
k2=2;
k3=3;
x=15;
if(!
k1)x--;
elseif(k2)x=4;
elsex=3;"A14B4C15D3B
67"执行下列语句后的输出为()。
intj=-1;
if(j<=1)printf(""****\n"");
elseprintf(""%%%%\n"");"A****B%%%%C%%%%cD有错,执行不正确A
68"下列程序的输出结果是()。
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);
}"Aa=1,b=0Ba=2,b=1Ca=1,b=1Da=2,b=2B
69"在C语言中,为了结束由while语句构成的循环,while后一对圆括号
中表达式的值应该为()。
"A0B1CTrueD非0A
70"下列程序的输出为()。
main()
{inty=10;
while(y--);
printf(""y=%d\n"",y);
}"Ay=0Bwhile构成无限循环Cy=1Dy=-1D
71C语言的if语句嵌套时,if与else的配对关系是()。
A每个else总是与它上面的最近的未被配对的if配对B每个else总是与最外层的if配对C每个else与if的配对是任意的D每个else总是与它上面的if配对A
72"设j和k都是int类型,则for循环语句
for(j=0,k=-1;k=1;j++,k++)printf(""****\n"");()。
"A循环结束的条件不合法B是无限循环C循环体一次也不执行D循环体只执行一次B
73"设j和k都是int类型,则for循环语句
for(j=0,k=0;j<=9&&k!
=876;j++)scanf(""%d"",&k);()。
"A最多执行10次B最多执行9次C是无限循环D循环体一次也不执行A
74下列数组说明中,正确的是()。
Aintarray[][4];Bintarray[][];Cintarray[][][5];Dintarray[3][];A
75下列数组操作说明中,正确的是()。
Astaticcharstr[]="China";Bstaticcharstr[];str="China";Cstaticcharstr1[5],str2[]={"China"};str1=str2;Dstaticcharstr1[],str2[];str2={"China"};strcpy(str1,str2);A
76下列定义数组的语句中正确的是()。
Acharstr[10];Bcharstr[];Cintnum['10'];Dintn=5;inta[n][n+2];A
77下列定义数组的语句中不正确的是()。
Astaticinta[2][3]={1,2,3,4,5,6};Bstaticinta[2][3]={{1},{4,5}};Cstaticinta[][3]={{1},{4}};Dstaticinta[][]={{1,2,3},{4,5,6}};D
78下列语句中,不正确的是()。
Astaticchara[2]={1,2};Bstaticinta[2]={'1','2'};Cstaticchara[2]={'1','2','3'};Dstaticchara[2]={'1'};C
79"若输入ab,程序运行结果为()。
main()
{staticchara[2];
scanf(""%s"",a);
printf(""%c,%c"",a[1],a[2]);
}"Aa,bBa,Cb,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
84C语言执行程序的开始执行点是()。
A程序中第一条可以执行语言B程序中第一个函数C程序中的main函数D包含文件中的第一个函数C
85C语言程序中,若对函数类型未加显式说明,则函数的隐含说明类型为()。
AvoidBdoubleCintDcharC
86C语言程序中,当调用函数时()。
A实参和形参各占一个独立的存储单元B实参和形参可以共用存储单元C可以由用户指定是否共用存储单元D计算机系统自动确定是否共用存储单元C
87数组名作为实参数传递给函数时,数组名被处理为()。
A该数组的长度B该数组的元素个数C该数组的首地址D该数组中各元素的值C
88以下描述中,正确的是()。
A预处理是指完成宏替换和文件包含中指定的文件的调用B预处理指令只能位于C源文件的开始CC源程序中凡是行首以#标识的控制行都是预处理指令D预处理就是完成C编译程序对C源程序第一遍扫描,为编译词法和语法分析作准备C
89以下对C语言函数的描述中,正确的是()。
AC程序必须由一个或一个以上的函数组成BC函数既可以嵌套定义又可以递归调用C函数必须有返回值,否则不能使用函数DC程序中有调用关系的所有函数必须放在同一个程序文件中A
90"以下函数调用语句中实参的个数是()。
exce((v1,v2),(v3,v4,v5),v6);"A3B4C5D6A
91"以下函数调用语句中实参的个数是()。
func((e1,e2),(e3,e4,e5));"A2B3C5D语法错误A
92C语言中函数调用的方式有()。
A函数调用作为语句一种B函数调用作为函数表达式一种C函数调用作为语句或函数表达式两种D函数调用作为语句、函数表达式或函数参数三种D
93"执行下面程序后,输出