单项选择题
1、假定p1和p2是已赋值的字符型指针,则下述有关运算中,非法的是( C ) √此题回答正确
1. 2. 3. 4.
A. .p2=p1+(p1-p2); printf(\B. .if (p1= =p2)
C. .*(p1-2+p2)=getchar( ); D. *(p1+=2)=*p2
2、循环语句for (x=0,y=0;(y!=123)||(x<4);x++);的循环执行( A ) √此题回答正确
1. 2. 3. 4.
A. 无限次 B. 4次 C. 3次 D. 不确定次
3、设有定义\,执行下列语句后,b的值不为5的赋值语句是(4 )。 √此题回答正确
1. 2. 3. 4.
A. b=*&a B. b=* C. b=a D. b=*a
4、若有定义: char s[81];以下哪个选项不能实现将字符串\存入数组s中( B )。 √此题回答正确
1.
A. gets(s+2)
2. 3. 4. B. scanf(\\\C. s)\
D. .for(i=0;i<18;i++) ((c=getchar( ))!=\5.
E. .i=0;while
5、对于for( 表达式1;;表达式3)可理解为( A ) √此题回答正确
1. A. for(表达式1;1;表达式3) 2. B. for(表达式1;表达式1;表达式3) 3. C. for(表达式1;表达式3;表达式3) 4.
D. for(表达式1;0;表达式3)
6、语句while (!e)中的条件!e等价于( A ) √此题回答正确
1. A. e= =0 2. B. e!=0 3. C. ~e 4.
D. e!=1
7、对于条件表达式(M)?(a++):(a--)来说,其中的表达式M等价于(√此题回答正确
1. A. M= =0 2. B. M= =1 3. C. M!=1 4.
D. M!=0
D )
8、设x,y,z,t均为int型变量,则执行x=y=z=1;t=++x||++y&&++z;语句后,t的值为( D ) √此题回答正确
1. 2. 3. 4.
A. 不定值 B. 2 C. 0 D. 1
9、设int a=2,b;则执行b=a&&1后b的值是( B ) √此题回答正确
1. 2. 3. 4.
A. 0 B. 1 C. 2 D. 3
10、执行下述程序后,输出的结果是( B )。 #include
{int a=10,k=2,m=1; a/=SQR(k+m)/SQR(k+m); printf(\√此题回答正确
1. 2. 3.
A. 10 B. 1 C. 9
4. D. 0
11、有如下程序,输入数据12345
{int x; float y; scanf(\ } √此题回答正确
1. A. 12.000000 2. B. 45.000000 3. C. 12345.000000 4.
D. 0.000000
12、若有如下程序,要求a1,a2,c1,c2的值分别为10,20,A,B,正确的数据输入是(#include
scanf(\ scanf(\ } √此题回答正确
1. A. 10 20 2. B. 10 20 AB 3. C. 10 20AB 4.
D. 020AB
C )。
13、下面程序的输出结果是( B )。 #include
{printf(\
√此题回答正确
1. A. 输出0
2. B. 因变量无定义,编译出错,没有输出 3. C. 输出-1 4.
D. 输出0
14、求解表达式f=(3.0,4.0,5.0),(2.0,1.0,0.0)后; 下列正确的选项是(√此题回答正确
1. A. 语法错误 2. B. 使f的值为5.0 3. C. 使f的值为0.0 4.
D. 使f的值为2.0
15、字符串\的长度是( B ) √此题回答正确
1. A. 11 2. B. 7 3. C. 5 4.
D. 3
16、表达式(1,2,3,4)的值是( D )
B )