桂林电子科技大学信息科技学院试卷
2008-2009 学年第 2 学期 课号 课程名称:C语言程序设计(闭卷)
适用班级(或年级、专业) 通信、电子
考试时间 120 分钟 班级 学号 姓名 座位号
题 号一二三四五六七八九十成绩满 分403030100得 分评卷人
(本试卷包括第一卷和第二卷,答卷时间总共120分钟)
第一卷
说明:
(1) 第一卷全部为选择题,每题可供选择的答案中,只有一个正确答案。
(2) 答本卷的题目时,要在标准答题纸上编写对应的栏目中,用铅笔在正确答案图黑,在试题上直接勾划者不得分。
(3) 本卷共70分,其中第1~26题每题2分,第27~32题每题3分。
第一部分:基础知识(20题,共40分)
1 以下叙述中正确的是
A)C语言的源程序不必通过编译就可以直接运行
B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C)C源程序经编译形成的二进制代码可以直接运行
D)C语言中的函数不可以单独进行编译
2 以下选项中合法的用户标识符是
A) long B) _2Test C) 3Dmax D) A.dat
3 已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'\101'是
A) 字符A B) 字符a C) 字符e D) 非法的常量
4 以下非法的赋值语句是
A) n=(i=2,++i); B) j++; C) ++(i+1); D) x=j>0;
5 设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是
A) 6.500000 B) 6 C) 5.500000 D) 6.000000
6 已知i、j、k为int型变量,若从键盘输入:1,2,3,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是
A) scanf("%2d%2d%2d",&i,&j,&k); B) scanf("%d %d %d",&i,&j,&k);C) scanf("%d,%d,%d",&i,&j,&k); D) scanf("i=%d,j=%d,k=%d",&i,&j,&k);
7设有定义:float a=2,b=4,h=3;,以下C语言表达式与代数式 计算结果不相符的是
A) (a+b) *h/2 B) (1/2)*(a+b)*h C) (a+b)*h*1/2 D) h/2*(a+b)
8与数学式子对应的C语言表达式是
A) 3*x^n(2*x-1) B) 3*x**n(2*x-1)
C) 3*pow(x,n)*(1/(2*x-1)) D) 3*pow(n,x)/(2*x-1)
9 设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是
A) printf("x=%d\n",x); B) printf("x=%1d\n",x);
C) printf("x=%8dL\n",x); D) printf("x=%LD\n",x);
10 若有以下程序:
main()
{ int k=2,i=2,m;
m=(k+=i*=k); printf("%d,%d\n",m,i);
}
执行后的输出结果是
A) 8,6 B) 8,3 C) 6,4 D) 7,4
11 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是
A) 6 B) 0 C) 2 D) 1
12 以下选项中,与k=n++完全等价的表达式是
A) k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k+=n+1
13 下列关于单目运算符++、--的叙述中正确的是
A) 它们的