__________________________________________________
一、选择题(每题1.5分,共计45分) 1、以下选项中合法的标识符是【 】
A.1_1 B.1-1 C._11
D.1_ _
2、若函数中有定义语句: int k; ,则【 】
A.系统将自动给k赋初值0 B.这时k中的值无定义
C.系统将自动给k赋初值-1 D.这时k中无任何值 3、一下选项中,能用作数据常量的是【 】
A.o115 B.0118 C.1.5e1.5 D.115L
4、设有定义: int x=2; ,一下表达式中,值不为6的是【 】
A.x*=x+1 B.X++,2*x C.x*=(1+x)
D.2*x,x+=2
5、程序段: int x=12; double y=3.141593; printf(\的输出结果是【 A.123.141593 B.12 3.141593 C.12,3.141593
D.123.1415930 6、若有定义语句: double x,y,*px,*py; 执行了px=&x; py=&y; 之后,正确的输入语句是【A.scanf(\B.scanf(\C.scanf(\D.scanf(\7、一下是if语句的基本形式: if(表达式) 语句,其中\表达式\【 】
A.必须是逻辑表达式 B.必须是关系表达式
C.必须是逻辑表达式或关系表达式 D.可以是任意合法的表达式 8、有以下程序
#include
收集于网络,如有侵权请联系管理员删除
】
】
__________________________________________________
scanf(\ if(x<=3) ; else
if(x!=10) printf(\}
程序运行时,输入的值在哪个范围才会有输出结果【 】 A.不等于10的整数
B.大于3且不等于10的整数 C.大于3或等于10的整数 D.小于3的整数
9、有以下程序
#include
{ int a=1,b=2,c=3,d=0; if (a==1 && b++==2) if (b!=2||c--!=3)
printf(\ else printf(\ else printf(\}
程序运行后输出结果是【 】 A.1,2,3 B.1,3,2 C.1,3,3 D.3,2,1 10、假设以下程序段中的变量已正确定义
for(i=0;i<4;i++,j++)
for(k=1;k<3;k++); printf(\程序段的输出结果是【 】 A.******** B.**** C.** D.*
11、有以下程序
#include
{ char *s={\ do
{ printf(\ }
while (*s); }
注意:字母A的ASCII码值为65。程序运行后的输出结果是【 A.5670
收集于网络,如有侵权请联系管理员删除 】
__________________________________________________
B.656667 C.567
D.ABC
12、设变量已正确定义,以下不能统计出一行中输入字符个数(不包含回车符)的程序段【 】
A.n=0; while((ch=getchar())!=~\\n~) n++; B.n=0; while(getchar()!=~\\n~) n++; C.for(n=0;getchar()!=~\\n~;n++);
D.n=0; for(ch=getchar();ch!=~\\n~;n++); 13、有以下程序
#include
{ int a1,a2; char c1,c2;
scanf(\ printf(\}
若通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b 则正确的输入格式是(以下_代表空格,
A.12a34b
D.12_a34_b
#include
{ int a=3,b=4,c=5,d; d=f(f(a,b),f(a,c)); printf(\}
程序运行后的输出结果是 A.10 B.9 C.8
D.7
15、有以下程序
#include
{ if (*s%2= =0) printf(\ s++; }
收集于网络,如有侵权请联系管理员删除
__________________________________________________
}
main()
{ char a[ ]={\ fun(a); printf(\}
注意:字母a的ASCII码值为97,程序运行后的输出结果是【 】 A.d B.go C.god
D.good
16、有以下程序
#include
void fun(int *a,int *b) { int *c;
c=a;a=b;b=c; }
main( )
{ int x=3,y=5,*p=&x,*q=&y;
fun(p,q); printf(\ fun(&x,&y);printf(\}
程序运行后输出的结果是【 】 A.3,5,5,3 B.3,5,3,5 C.5,3,3,5
D.5,3,5,3 17、有以下程序
#include
void f(int *p,int *q); main( )
{ int m=1,n=2,*r=&m;
f(r,&n); printf(\}
void f(int *p,int *q) {p=p+1;*q=*q+1;}
程序运行后的输出结果是【 】 A.1,3 B.2,3 C.1,4
D.1,2 18、以下函数按每行8个输出数组中的数据
#include
void fun(int *w,int n)
收集于网络,如有侵权请联系管理员删除
__________________________________________________
{ int i;
for(i=0;i printf(\} 下划线出应填入的语句是【 】 A.if(i/8= =0) printf(\B.if(i/8= =0) continue; C.if(i%8= =0) printf(\D.if(i%8= =0) continue; 19、若有以下定义 int x[10],*pt=x; 则对数组元素的正确引用是【 】 A.*&x[10] B.*(x+3) C.*(pt+10) D.pt+3 20、设有定义:char s[81];int i=0;,以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是【 】 A.gets(s); B.while((s[i++]=getchar())!=’\\n’); s[i]=’\\0’; C.scanf(\ D.do{scanf(\’\\n’); s[i]=’\\0’; 21、有以下程序 #include { char *a[ ]={\int i; for(i=0;i<4;i++) printf(\} 程序运行后的输出结果是【 】 A.aegi B.dfhk C.dfhk D.abcdefghijk 22、以下选项中正确的语句组是【 】 A.char s[]; s=\B.char *s; s={\C.char s[10]; s=\D.char *s; s=\ 收集于网络,如有侵权请联系管理员删除