文档介绍:专升本C语言程序设计试卷
专升本C语言程序设计试卷(二)
一、单项选择题(1~30题每小题1分,31~45题每小题2分,共60分)
1.  以下合法的用户自定义标识符是(D)。
A、 b-b      B、float          C、<fr>          D、 _isw     
2.  若变量已正确定义并赋值,以下不符合C语言语法的表达式是(B)。
A、a*b/c;     B、%2       C、2, b          D、a/b/c
3.   下列不正确的字符常量是(C)
A、'n'        B、'1'            C、"a"          D、'101'
4.   在 C 语言中,表示逻辑值“真”用 (B)
A、1         B、非 0 的数     C、非 1 的数    D、 大于 0 的数
5.    把x、y定义成float类型变量,(C)
A、float x,
a=10  b=10       D、a=10, b=10
9.    下列程序的输出结果是(D)
fun(int a, int b, int c)
{  c =a*b;  }
void main( )
{  int c;
  fun(2,3,c);
  printf(”%dn”,c);
}
A、0          B、1           C、6            D、无法确定
10.  在C程序中,若对函数类型未加说明,则函数的隐含类型为(A)
A、int         B、double      C、void      D、char
11.  表达式 strlen(”hello”) 的值是(B)
A、 4         B、 5          C、 6        D、 7
12.  设变量定义为“int a[4];”,则不符合C语言语法的表达式是(D)
A、*a         B、a[0]         C、a         D、a++
13.  
设变量定义为“int x, *p=&x;”,则&*p相当于(A)
A、p          B、*p           C、x         D、*&x
14.  若变量已正确定义,不能使指针p成为空指针的是(A)
A、p=EOF     B、p=0         C、p=’’      D、p=NULL
15.  对于以下的变量定义,不符合C语言语法的表达式是(D)
   struct node {
  int len;
      char *pk;
   } x = {2, "right"}, *p = &x;
A、p->pk       B、*        C、*p->pk        D、*
16. 有如下程序
int runc(int a,int b)
{ return(a+b);}
main0
{ int x=2,y=5,z=8,r;
r=func(func(x,y),z);
printf(“%\d\n”,r);
}
该程序的输出的结果是 (D)
A) 12 B) 13 C) 14 D) 15
17. 对于基类型相同的两个指针变量之间,不能进行的运算是 (C)
A) < B) = C) + D) -
18. 有如下程序
long fib(int n)
{ if(n>2) return(fib(n-1)+fib(n-2));
else return(2);
}
main0
{ printf(“%d\n”,fib(3));
该程序的输出结果是 (B)
A} 2 B} 4 C} 6 D} 8
19. 有如下定义
struct person{char name[9]; int age;};
strict person class[10]={“Johu”, 17,
“Paul”, 19
“Mary”, 18,
“Adam 16,};
根据上述定义,能输出字母M的语句是 (D)
A) prinft(“%c\n”,class[3].mane);
B) pfintf(“%c\n”,class[3].name[1]);
C) prinft(“%c\n”,class[2].name[1]);