《程序设计基础》考试试卷三
1. 判断下面标识符中哪个是C语言中合法的用户定义标识符:
A. a-b
B. #abd
C. typedef
D. _max
2. …b?在内存中占个字节,“B”在内存中占个字节。
A. 1
B. 2
C. 3
D. 4
3. 下列表达式的值哪些不等于0?
A. 2>>1
B. ~a&a
C. 1>5
D. a^a
4. 设有一分段函数:x=1 a
x=2 a>=b 则下列程序段哪个是正确的?
A. if(a
B. if (a
C. if (a>b)
D. if (a>=b)
If(c==d) {if (c==d) if (c==d) x=2;
x=1; x=1; x=1; else
else x=2; else x=2;} else x=2; {if(c==d) x=1;}
5. 下列关于switch和break语句的讨论中,只有是正确的。
A. break语句是switch 语句的一部分
B.在switch语句中可以根据需要使用或不使用break语句
C. switch语句中必须使用break语句
D.以上三种说法都不正确。
6. 若有两条语句:static char x[]=”abcde”;
static char y[]={…a?,?b?,?c?,?d?,?e?};
则下列说法中正确的是:。
A. x数组和y数组长度相同
B.x数组长度大于y数组长度
C.x数组长度小于y数组长度
D.以上三种说法均错误。
7. 返回值为void的函数,其含义是:
A. 调用函数之后,被调用的函数没有返回值;
B. 调用函数之后,被调用的函数不返回
C. 调用函数之后,被调用的函数返回值为任意类型
D. 以上三种说法均不正确。
8. C语言中函数的隐含存储类别是,在一个C源程序文件中,若要定义一个只允许在本源文件中所有函数使用的全局变量,则变量需要使用的存储类别是。
A. auto
B. static
C. register
D. extern
9. 若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)
s=a;
for(b=1;b<=c;b++) s=s+1;
则与上述程序段功能等价的赋值语句是
A. s=a+b;
B. s=a+c;
C. s=s+c;
D. s=b+c;
10. 以下叙述中不正确的是
A. 在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值。
B. 在C中,在调用函数时,实在参数和对应形参在类型上只需赋值兼容。
C. 在C中,外部变量的隐含类别是自动存储类别。
D. 在C中,函数形参可以说明为register变量。
11. 对于scanf(“A=%d”,&a)语句,输入10的正确的输入形式是:
A. a=10
B. A=10
C. 10
D. =10