c语言单选题

更新时间:2024-06-04 10:08:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

导出题库试题(1~100)

共计460道试题

一、单项选择 (共460题) Turbo C(共460试题)

87).C语言源程序的基本单位是(B)。 A)、过程 B)、函数 C)、子程序 D)、标识符

88).下列字符序列中,可用作C标识符的一组字符序列是(D)。 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

89).以下标识符中,不能作为合法的C用户定义标识符的是(B)。 A)、a3_b3 B)、void C)、_123 D)、IF

90).以下数据中,不正确的数值或字符常量是(C)。 A)、0 B)、5L C)、o13 D)、9861

91).以下数值中,不正确的八进制数或十六进制数是(C)。 A)、0x16 B)、16 C)、-16 D)、0xaaaa

92).以下的选择中,正确的赋值语句是(C)。 A)、a=1,b=2 B)、j++

第1页 共14页

C)、a=b=5; D)、y=int(x)

93).以下运算符中,优先级最高的运算符是(B)。 A)、?: B)、++ C)、&& D)、,

94).在C语言中,能代表逻辑值“真”的是(D)。 A)、True B)、大于0的数 C)、非0整数 D)、非0的数

95).下列变量说明语句中,正确的是(D)。 A)、char:a b c; B)、char a;b;c; C)、int x;z; D)、int x,z;

96).下列字符序列中,不可用作C语言标识符的是(B)。 A)、b70 B)、#ab C)、symbol

D)、a_1 97).以下不正确的叙述是(D)。

A)、在C程序中所用的变量必须先定义后使用 B)、程序中,APH和aph是两个不同的变量

C)、若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变 D)、当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值 98).以下标识符中,不能作为合法的C用户定义标识符的是(D)。 A)、For B)、Printf C)、WORD D)、sizeof

99).以下标识符中,不能作为合法的C用户定义标识符的是(C)。 A)、answer B)、to C)、signed D)、_if

100).以下标识符中,不能作为合法的C用户定义标识符的是(A)。 A)、putchar

第2页 共14页

B)、_double C)、_123 D)、INT

101).以下数据中,不正确的数值或字符常量是(A)。 A)、8.9e1.2 B)、10 C)、0xff00 D)、82.5

102).以下数据中,不正确的数值或字符常量是(A)。 A)、c B)、66 C)、0xaa D)、50

103).以下运算符中,优先级最高的运算符是(C)。 A)、*= B)、>= C)、(类型) D)、+

104).以下运算符中,优先级最高的运算符是(C)。 A)、|| B)、% C)、! D)、==

105).以下运算符中,优先级最高的运算符是(D)。 A)、= B)、!= C)、*(乘号) D)、()

106).以下叙述中不正确的是(B)。 A)、一个好的程序应该有详尽的注释 B)、在C程序中,赋值运算符的优先级最低 C)、在C程序中,j++;是一条赋值语句 D)、C程序中的#include和#define均不是C语句

107).设C语言中,int类型数据占2个字节,则long类型数据占(C)。 A)、1个字节 B)、2个字节 C)、4个字节 D)、8个字节

108).设C语言中,int类型数据占2个字节,则short类型数据占(B)。

第3页 共14页

A)、1个字节 B)、2个字节 C)、4个字节 D)、8个字节

109).C语言中,double类型数据占(D)。 A)、1个字节 B)、2个字节 C)、4个字节 D)、8个字节

110).C语言中,char类型数据占(A)。 A)、1个字节 B)、2个字节 C)、4个字节 D)、8个字节

111).设C语言中,int类型数据占2个字节,则unsigned类型数据占(B)。 A)、1个字节 B)、2个字节 C)、4个字节 D)、8个字节

112).下列程序的输出结果是(B)。main(B){char c1=97,c2=98;printf(\ A)、97 98 B)、97 b C)、a 98 D)、a b

113).执行下列语句后变量x和y的值是(C)。y=10;x=y++; A)、x=10,y=10 B)、x=11,y=11 C)、x=10,y=11 D)、x=11,y=10

114).下列数据中,为字符串常量的是(B)。 A)、A B)、\ C)、How do you do. D)、$abc

115).先用语句定义字符型变量c,然后要将字符a赋给c,则下列语句中正确的是(A)。 A)、c='a'; B)、c=\ C)、c=\ D)、C='97'

第4页 共14页

116).下列语句的结果是(D)。main(D){ int j; j=3;printf(\ A)、3,3 B)、3,4 C)、4,3 D)、4,4

117).设a=12,且a定义为整型变量。执行语句a+=a-=a*=a;后a的值为(C)。 A)、12 B)、144 C)、0

D)、132

118).已知year为整型变量,不能使表达式(year%4==0&&year0!=0)||year@0==0的值为“真”的数据是(A)。

A)、1990 B)、1992 C)、1996 D)、2000

119).下列运算符中,不属于关系运算符的是(D)。 A)、< B)、> C)、>= D)、!

120).假设所有变量均为整型,表达式:a=2,b=5,a>b?a++:b++,a+b的值是(B)。 A)、7 B)、8 C)、9 D)、2

121).以下不符合C语言语法的赋值语句是(A)。 A)、a=1,b=2 B)、++j; C)、a=b=5; D)、y=(a=3,6*5);

122).以下不符合C语言语法的赋值语句是(D)。 A)、j++; B)、j=j=5; C)、k=2*4,k*4; D)、y=float(j);

123).执行下列程序后,其输出结果是(C)。main(C){int a=9; a+=a-=a+a; printf(\ A)、18 B)、9 C)、-18

第5页 共14页

D)、-9

124).下列语句的输出结果是(C)。printf(\ A)、有语法错误不能通过编译 B)、2 C)、1 D)、0

125).下列程序的输出结果是(A)。main(A){int a=7,b=5; printf(\ A)、0 B)、5 C)、1 D)、不确定值

126).下列程序的输出结果是(C)。main(C){int a=011; printf(\ A)、12 B)、11 C)、10 D)、9

127).下列程序的输出结果是(B)。main(B){ printf(\ A)、0 B)、变量无定义 C)、-1 D)、1

128).若int类型数据占两个字节,则下列语句的输出为(D)。int k=-1; printf(\ A)、-1,-1 B)、-1,32767 C)、-1,32768

D)、-1,65535

129).若k,g均为int型变量,则下列语句的输出为(D)。k=017; g=111; printf(\ printf(\ A)、15 6f B)、16 70 C)、15 71 D)、16 6f

130).以下程序段的执行结果是(C)。double x;x=218.82631; printf(\ A)、输出格式描述符的域宽不够,不能输出 B)、输出为21.38e+01 C)、输出为2.2e+02 D)、输出为-2.14e2

131).若k为int型变量,则以下程序段的执行结果是(B)。k=-8567; printf(\ A)、格式描述符不合法,输出无定值 B)、输出为|D|

第6页 共14页

C)、输出为|0-8567| D)、输出为|-8567|

132).若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),则以下程序段的执行结果是(C)。ch='a'; k=12; printf(\ printf(\ A)、因变量类型与格式描述符的类型不匹配,输出无定值 B)、输出项与格式描述符个数不符,输出为零值或不定值 C)、61,141,k=%d D)、61,141,k=

133).若有以下定义:char s='\\092'; 则该语句(B)。 A)、使s的值包含1个字符 B)、定义不合法,s的值不确定 C)、使s的值包含4个字符 D)、使s的值包含3个字符

134).若a是float型变量,b是unsigned型变量,以下输入语句中合法的是(C)。 A)、scanf(\ B)、scanf(\ C)、scanf(\ D)、scanf(\

135).已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为(C)。char a='a'; a--;printf(\ A)、b,c B)、a--运算不合法,故有语法错 C)、98,c

D)、格式描述和输出项不匹配,输出无定值

136).下列程序的输出结果为(A)。main(A){int m=7,n=4;float a=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf(\ A)、27.000000 B)、27.500000 C)、28.000000 D)、28.500000

137).若给定条件表达式(M)?(a++):(a--),则其中表达式M(C)。 A)、和(M==0)等价 B)、和(M==1)等价 C)、和(M!=0)等价 D)、和(M!=1)等价 138

).

D

)。

main

D

{int

i,j,k,a=3,b=2;i=(--a==b++)?--a:++b;j=a++;k=b;printf(\ 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

第7页 共14页

139).a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是(C)。 A)、a*b/a*b==1 B)、a/b*b/a==1 C)、a/b*b+a%b==a

D)、a/b*b==a

141).为了提高程序的运行速度,在函数中对于整型或指针可以使用(B)型的变量。 A)、auto B)、register C)、static D)、extern

142).以下程序的输出结果为(B)。main(B){int i=010,j=10; printf(\

A)、11,10 B)、9,10 C)、010,9 D)、10,9

143).C 语言中以下几种运算符的优先次序(B)的排列是正确的。 A)、由高到低为:!,&&,||,算术运算符,赋值运算符 B)、由高到低为:!,算术运算符,关系运算符,&&,||,赋值运算符 C)、由高到低为:算术运算符,关系运算符,赋值运算符,!,&&,|| D)、由高到低为:算术运算符,关系运算符,!,&&,||,赋值运算符

144).设a为整型变量,初值为12,执行完语句a+=a-=a*a后,a的值是(D)。 A)、552 B)、144 C)、264 D)、-264

145).经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在微机上的值分别为(C)。char x=65;float y=7.3; int a=100; double b=4.5; A)、2,2,2,4 B)、1,2,2,4 C)、1,4,2,8 D)、2,4,2,8

146).用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是(C)。 long a=0xffffff; int b; char c; A)、0ffffff 和0x61 B)、-1和98 C)、-1和97 D)、指向同一地址

147).执行下列语句后,a和b的值分别为(B)。int a,b; a=1+'a'; b=2+7%-4-'A'; A)、-63,-64 B)、98,-60

第8页 共14页

C)、1,-60 D)、79,78

148).C语言中要求对变量作强制定义的主要理由是(D)。 A)、便于移植 B)、便于写文件 C)、便于编辑预处理程序的处理 D)、便于确定类型和分配空间

149).以下程序的输出结果是(C)。main(C){float x=3.6; int i; i=(int)x; printf(\ A)、x=3.600000,i=4 B)、x=3,i=3 C)、x=3.600000,i=3 D)、x=3 i=3.600000

150).经过以下语句定义后,表达式z+=x>y?++x:++y的值为(C)。 int x=1,y=2,z=3; A)、2 B)、3 C)、6 D)、5

151).以下程序的运行结果是(D)。main(D){ int i=1,sum=0; while(i<10) printf(\ A)、i=10,sum=9 B)、i=9,sum=9 C)、i=2,sum=1 D)、运行出现错误

152).以下程序的运行结果是(A)。main(A){ int n; for(n=1;n<=10;n++) { continue; printf(\ }} A)、12457810 B)、369 C)、12 D)、1234567890

153).在C语言中,if语句后的一对原括号中,用以决定分支的流程的表达式(D)。 A)、只能用逻辑表达式 B)、只能用关系表达式 C)、只能用逻辑表达式或关系表达式 D)、可用任意表达式

154).在以下给出的表达式中,与 do--while(E)语句中的(E)不等价的表达式是(C)。 A)、(!E==0) B)、(E>0||E<0) C)、(E==0) D)、(E!=0)

第9页 共14页

sum=sum+1;i++; if(n%3==0)

155).假定所有变量均已正确定义,下列程序段运行后x的值是(B)。k1=1;k2=2;k3=3;x=15;if(!k1) x--;else if(k2) x=4; else x=3; A)、14 B)、4 C)、15

D)、3

156).执行下列语句后的输出为(A)。 int j=-1; if(j<=1) printf(\ printf(\ A)、**** B)、%%%%

C)、%%%%c D)、有错,执行不正确

157).下列程序的输出结果是(B)。main(B){ int x=1,y=0,a=0,b=0; switch(x) { case 1:switch(y) { case 0:a++;break; case 1:b++;break; } case 2:a++;b++;break; case 3:a++;b++;break; } printf(\ A)、a=1,b=0 B)、a=2,b=1 C)、a=1,b=1 D)、a=2,b=2

158).在C语言中,为了结束由while语句构成的循环,while后一对圆括号中表达式的值应该为(A)。 A)、0 B)、1 C)、True D)、非0

159).下列程序的输出为(D)。main(D) { int y=10; while(y--); printf(\ A)、y=0 B)、while构成无限循环 C)、y=1 D)、y=-1

160).C语言的if语句嵌套时,if与else的配对关系是(A)。 A)、每个else总是与它上面的最近的if配对 B)、每个else总是与最外层的if配对 C)、每个else与if的配对是任意的 D)、每个else总是与它上面的if配对

161).设j和k都是int类型,则for循环语句 for(j=0,k=-1;k=1;j++,k++) printf(\(B)。 A)、循环结束的条件不合法 B)、是无限循环

C)、循环体一次也不执行 D)、循环体只执行一次

163).下列数组说明中,正确的是(A)。

第10页 共14页

A)、int array[][4]; B)、int array[][]; C)、int array[][][5]; D)、int array[3][];

164).下列数组说明中,正确的是(A)。 A)、static char str[]=\ B)、static char str[]; str=\

C)、static char str1[5],str2[]={\

D)、static char str1[],str2[];str2={\

165).下列定义数组的语句中正确的是(A)。 A)、#define size 10 char str1[size],str2[size+2]; B)、char str[]; C)、int num['10']; D)、int n=5; int a[n][n+2];

166).下列定义数组的语句中不正确的是(D)。 A)、static int a[2][3]={1,2,3,4,5,6}; B)、static int a[2][3]={{1},{4,5}}; C)、static int a[][3]={{1},{4}}; D)、static int a[][]={{1,2,3},{4,5,6}};

167).下列语句中,不正确的是(C)。 A)、static char a[2]={1,2}; B)、static int a[2]={'1','2'}; C)、static char a[2]={'1','2','3'}; D)、static char a[2]={'1'};

168).若输入ab,程序运行结果为(C)。main(C) { static char a[2]; printf(\ } A)、a,b B)、a, C)、b, D)、程序出错

169).下列说法不正确的是(A)。

A)、主函数main中定义的变量在整个文件或程序中有效 B)、不同函数中,可以使用相同名字的变量

C)、形式参数是局部变量 D)、在一个函数内部,可以在复合语句中定义变量,这些变量只在复合语句中有效

170).关于return语句,下列正确的说法是(C)。 A)、在主函数和其他函数中均可出现 B)、必须在每个函数中出现 C)、可以在同一个函数中出现多次 D)、只能在除主函数之外的函数中出现一次

第11页 共14页

scanf(\

171).在C语言的函数中,下列正确的说法是(C)。 A)、必须有形参

B)、形参必须是变量名 C)、可以有也可以没有形参 D)、数组名不能作形参

172).在C语言程序中(B)。

A)、函数的定义可以嵌套,但函数的调用不可以嵌套 B)、函数的定义不可以嵌套,但函数的调用可以嵌套 C)、函数的定义和函数调用均可以嵌套 D)、函数的定义和函数调用不可以嵌套

173).C语言执行程序的开始执行点是(C)。

A)、程序中第一条可以执行语言 B)、程序中第一个函数 C)、程序中的main函数 D)、包含文件中的第一个函数

174).C语言程序中,若对函数类型未加显式说明,则函数的隐含说明类型为(C)。 A)、void B)、double C)、int D)、char

175).C语言程序中,当调用函数时(A)。 A)、实参和虚参各占一个独立的存储单元 B)、实参和虚参可以共用存储单元

C)、可以由用户指定是否共用存储单元 D)、计算机系统自动确定是否共用存储单元

176).数组名作为实参数传递给函数时,数组名被处理为(C)。 A)、该数组的长度 B)、该数组的元素个数 C)、该数组的首地址 D)、该数组中各元素的值

177).以下描述中,正确的是(C)。 A)、预处理是指完成宏替换和文件包含中指定的文件的调用

B)、预处理指令只能位于C源文件的开始 C)、C源程序中凡是行首以#标识的控制行都是预处理指令 D)、预处理就是完成C编译程序对C源程序第一遍扫描,为编译词法和语法分析作准备

178).以下对C语言函数的描述中,正确的是(A)。 A)、C程序必须由一个或一个以上的函数组成 B)、C函数既可以嵌套定义又可以递归调用 C)、函数必须有返回值,否则不能使用函数

第12页 共14页

D)、C程序中有调用关系的所有函数必须放在同一个程序文件中

179).以下函数调用语句中实参的个数是(A)。 exce((v1,v2),(v3,v4,v5),v6); A)、3 B)、4 C)、5 D)、6

180).以下函数调用语句中实参的个数是(A)。 func((e1,e2),(e3,e4,e5)); A)、2 B)、3 C)、5 D)、语法错误

181).C语言中函数调用的方式有(D)。 A)、函数调用作为语句一种 B)、函数调用作为函数表达式一种 C)、函数调用作为语句或函数表达式两种

D)、函数调用作为语句、函数表达式或函数参数三种

182).执行下面程序后,输出结果是(A)。main(A){ a=45,b=27,c=0; c=max(a,b); printf(\ max(x,y) int x,y; { int z; if(x>y) z=x; else z=y; return(z); } A)、45 B)、27 C)、18

D)、72

183).以下程序的输出结果为(B)。main(B){int

a=1,b=2,c=3,d=4,e=5;

printf(\ func(int x,int y) { return(x+y); } A)、15 B)、13 C)、9

D)、函数调用出错

184).下列定义不正确的是(C)。 A)、#define PI 3.141592 B)、#define S345 C)、int max(x,y); int x,y; { } D)、static char c;

185).下列程序运行结果为:#define P 3#define S(a) P*a*amain(B) {int ar; ar=S(3+5); printf(\ A)、192 B)、29 C)、27 D)、25

第13页 共14页

186).已知p,p1为指针变量,a为数组名,j为整型变量,下列赋值语句中不正确的是(D)。 A)、p=&j,p=p1; B)、p=a; C)、p=&a[j]; D)、p=10;

187).经过下列的语句 int j,a[10],*p;定义后,下列语句中合法的是(A)。 A)、p=p+2; B)、p=a[5]; C)、p=a[2]+2; D)、p=&(j+2);

第14页 共14页

本文来源:https://www.bwwdw.com/article/rem6.html

Top