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页