2016C语言程序设计考试题.doc
西安电子科技大学
考试时间 120 分钟
试 题
题号一二三四五六总分分数 1.考试形式:闭 卷;2.本试卷共 六 大题,满分100分。
班级 学号 姓名 任课教师 单项选择题(每小题 2 分,共20 分)
1、设整型变量a为5,使b不为2的表达式是( )。A. b a/2 B. b 6- --a C. b a%2 D. b a 3?2:1
2、为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与( C )组成配对关系。
A. 缩排位置相同的if B. 在其之前未配对的if
C. 在其之前未配对的最近的if D. 同一行上的if
3、选出下列标识符中不是合法的标识符的是( )。A. see_02 B. cat C. _pi D. 2ab
4、在C程序中有如下语句:char *func(int x,int y);它是( )。A. 对函数func的定义。 B. 对函数func的调用。C. 对函数func的原型说明。 D. 不合法。、下列描述中不正确的是( )。A. 字符型数组中能存放字符串。B. 可以对字符型数组进行整体输入、输出。C. 可以对整型数组进行整体输入、输出。D. 不能在赋值语句中通过赋值运算符“ ”对字符型数组进行整体赋值。若用数组名作为函数调用时实参,则实际上传递给形参的是( )。
A.数组首地址 B. 数组的第一个元素值
C.数组中全部元素的值 D. 数组元素的个数
为了判断两个字符串s1和s2是否相等,应当使用 。A.if s1 s2 B. if s1 s2 C.if strcpy s1,s2 D. if strcmp s1,s2 0
8、在while(x)语句中的x与下面条件表达式等价的是( )。
A. x 0 B. x 1 C. x! 1 D. x 0
9、若有以下说明和语句:
struct stu int no;
char *name; student, *p &student;
则以下引用方法不正确的是( )。
A. student.no B. *p .no C. p- no D. student- no
10、以下对一维数组的定义中,正确的是( )。
A
C. int MAX; D. #define MAX 5
scanf “%d”,&MAX ; int a[MAX]; int a[MAX];
二、填空题(每小题 2 分,共 20 分)
整数-5在内的补码表示为_________。
表达式 2 3 4 的值是_____1_______。
写出下列程序段的输出结果____-3______。 #define A 3 #define B A A+2 -2 printf "%d", B*2 ;
写出判断字符变量c是否为小写字母的表达式 c ’z’&&c ’a’ 。
C语言中, 数组名 和 函数 的名字本身就表示地址。
一个有效的计算机算法必须有零个或多个输入至少一个输出可行性 有穷性 、 确定性 。
算法的流程图表示中,开始和结束符号标志是(画出其形状)_____________。
写出下列程序段的输出结果__orld!________。 char str[] "Hello World!";
printf "%s",str+7 ;
9.整型变量x值为127,语句printf "x %o",x 的输出结果为___x 177__________。
三、程序阅读题(每题5分,共20分)
以下程序的输出结果是________________。
int main void int n;
for n 1; n 10; n++ if n%3 continue; printf "%d\n",n ; 以下程序的输出结果是___________。
int main void int a 5,b -1,c;
c adds a,b ;
printf "%d\n",c ;
c adds a,b ;
printf "%d\n",c ; int adds int x,int y static int m 0,n 3;
n* ++m;
m n%x+ y++ ;
return m ; 写出下列程序段的输出结果____________________。
int main void int x 1,y 0,a 0,b 0;
switch x case 1: switch y case 0:a++;break; case 1:b++;break; case 2: a++;b++;break; printf "a %d,b %d\n",a,