专升本考试C语言模拟试题及参考答案【三篇】
一.单项选择题
1.以下定义语句中准确的是(C)
A)char a='A'b='B'; B)float a=b=10.0; C)int a=10,*b= &a; D)float *a,b=&a; 2.下列运算符中,优先级的是(A)。 A. ->B.++C. &&D. =
3.表达式!(x>0&&y>0)等价于(A)。
A. ! (x>0) || ! (y>0)B. !x>0 || !y>0C.!x>0 && !y>0D. !(x>0) && ! (y>0) 4.有以下程序 main()
{ int a=666,b=888; printf( \ }
程序运行后的输出结果是(B) A) 错误信息B)666 C)888 D)666,888 5.有以下程序 main() { int i;
for(i=0;i -10&& x-y10 D)(x-y)*(x-y)k=2;B.(*p).k=2;C.x . k=2D.x->k=2
9.不准确的赋值或赋初值的方式是(B)。
A.char str[ ]=”string”;B.char str[10];str=”string”; C.char *p=”string”;D.char *p; p=”string”;
10.设程序中不再定义新的变量,写出在函数main中能够使用的所有变量为:(B) #include int z; int p(int x) {static int y; return (x+y); }
void main( ) {int a,b;
printf(“%dn”, p(a)); ……… }
A. a,bB. a,b,zC.a,b,y,zD.a,b,x,y,z 11.有以下程序 main()
{ int i=0,x=0;
for (;;) {
if(i==3||i==5) continue; if (i==6) break; i++; s+=i; };
printf( \ }
程序运行后的输出结果是(D) A)10 B)13 C)21 D) 程序进入死循环 12.有以下程序 main()
{ char a,b,c,d;
scanf( \ printf( \
若运行时从键盘上输入:6,5,65,66。则输出结果是(A) A)6,5,A,B B)6,5,65,66 C)6,5,6,5 D)6,5,6,6
13.s12和s2已准确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句S;则以下选项中准确的是(D) A)if(s1 >s2)S; B)if(strcmp(s1,s2))S;