2013-2014学年第二学期
《C语言程序设计》期末试卷(B)
姓 名: 班 级: 年级编号: 题 号 一 二 三 四 五 六 总 分 得 分 一、单项选择题:(本题共30小题,每小题1分,共30分) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1.起换行作用的转义字符是( )。
A.’\\t’ B.’\\b’ C.’\\n’ D.’\\r’ 2.在以下几组运算符中,优先级最高的运算符是( )。
A.<=
B.=
C./
D.&&
3.设有定义“int i=1;”,以下选项的四个表达式中与其他三个表达式的值不相同的是
( )。
A.i++ B.i+=1 C.i+1 D.++i 4.C语言的三种基本结构是( )。
A.顺序结构.逻辑结构.选择结构 B.顺序结构.选择结构.循环结构 C.逻辑结构.层次结构.网状结构 D.层次结构.顺序结构.循环结构
5.关于数组元素类型的说法,下列( )是正确的。
A.必须是整数类型 B.必须是整型或实型 C.必须是相同数据类型 D.可以是不同数据类型 6.以下程序段的输出结果是( )。
#include
int i,j,m=0;
for(i=1;i<=5;i+=4) for(j=3;j<=19;j+=4) m++; printf(\}
A.10 B.15 C.20 D.25
7.设有如下定义: int x=10,y=3,z; 则语句printf(\的输出结果是( )。
A. 1 B. 0 C. 4 D. 3 8.在C语言中运算对象必须是整型的是( )。
A.%
B./
C.==
D.<=
9.若变量已说明为int类型,要给a、b、c输入数据,以下正确的输入语句为( )。
A.read(a,b,c); B.scanf(\C.scanf(\10.下面程序的结果是( )。
main() { int x=1; while(x<20) { x=x*x; x=x+1; }
printf(\
A.1 B.20 C.25 D.26 11.运行如下程序,其结果为( )。
main() { int i=3;
printf(“%d\\n”,++i); } A.4
B.3
C.2
D.5
12.已定义x和y为int类型,x=5,y=2则表达式“x/y”的值是( )。
A.1 B.1.0 C.1.5 D.2
13.若i为整型变量,则for(i=2;i==0;i--) printf(\循环体执行次数是( )。
A.无限次 B.0次 C.1次
D.2次
14.下列字符序列中,合法的标识符是( )。
A.A>B
B.#88
C.stu_100
D.J.P.Tom
15.表达式17%4/8的值为( )。
A.0
B.1 C.2 D.3 A.a=3,4,5 B.a=3*2 C.a=a&&b D.a=b=4 27.在C语言中,下列说法中正确的是( )。
A. 不能使用“do while”的循环
B.“do while”的循环必须使用break语句退出循环 C.“do while”的循环中,当条件为非0时将结束循环 D.“do while”的循环中,当条件为0时将结束循环
28.C语言规定,简单变量作为实参时,他和对应形参之间的数据传递方式是( )。
A.单向值传递 B.地址传递 C.相互传递 D.由用户指定方式 16.构成C语言源程序的基本单位是( )。
A.文本 A.getc() A.整数1
B.过程
C.函数 D.对象
C.getchar()
D.TRUE
D.scanf()
17.如要求从键盘读入含有空格字符的字符串,应使用函数( )。
B.gets()
18.C语言中逻辑真等价于( )。
B.整数0
C.非零数
19.若要定义一个具有5个元素的整型数组,以下错误的定义语句是( )。
A. int a[5]=﹛0﹜; B. int b[]={0,0,0,0,0}; C. int c[2+3]; D. int i,d[i];
20.C语言规定,在一个源程序中,main函数的位置( )。
A. 必须在最开始
B. 必须在系统调用的库函数的后面 C. 可以任意 D. 必须在最后
21.C语言中最基本的数据类型包括( )。
A. 整型.实型.逻辑型 B. 整型.实型.字符型 C. 整型.字符型.逻辑型 D. 字符型.实型.逻辑型
22.设有程序段 int k=10; while(k=0) k=k-1; 则下面描述中正确的是( A. while循环执行10次 B. 循环是无限循环 C. 循环体语句一次也不执行 D. 循环体语句执行一次
23. 阅读以下程序,当输入数据的形式为25,13,10
int x,y,z
scanf(\printf(“x+y+z=%d\\n” ,x+y+z); }
A.x+y+z=48 B.x+y+z=3 C.x+y+z=35 D.不确定值
24.C语言中,合法的字符型常数是( )。
A.‘A’ B.“A” C. 65 D. A 25. 不是C语言提供的合法关键字是( )。
A.switch B.cher C.case D.default
26.设a、b均为整型变量,下列表达式中不是赋值表达式的是( )。
)。。29.在C语言中,字符型数据在内存中以( )形式存放。
A. 原码 B. BCD码 C. 反码 D. ASCII码 30.设有说明:char w; int x; float y; double z; 则表达式w*x+z-y值的数据类型为( )。 A. float
B. char
C. int
D. double
二、判断题:(本大题共10小题,每小题1分,共10分) ( )1.若int i=10,j=2;则执行i*=j+8;后i的值为28。
( )2.若int x=100,y=200;则语句printf(\输出结果为100。 ( )3. C语言中的标识符只能由字母,数字和下划线三种字符组成。 ( )4.函数getchar()的作用是:输出一个字符。 ( )5.一个C语言程序总是从第一个函数开始执行。
( )6.在C语言中,char型数据在内存中是以ASCII码形式存储的。 ( )7.在C语言中switch语句必须使用break语句。 ( )8.do-while构成的循环语句中的循环体最少执行1次。
语言源程序文件通过了编译、连接之后 , 生成一个后缀为 .exe 的文件。 ( )10.表达式 0195 是一个八进制整数。
三、填空题:(本大题共15空,每空1分,共15分) 1.字符型数据在内存里面存储的是其 值。
2.在C语言中,一个char类型数据在内存中所占字节数为 。 3.若有定义int a=3;则表达式a+=5的值为 。
4.int i=5; 执行b=i++;后变量 b的值为 ,int i=3;执行b=++i;后变量b的值为 。
5.while循环语句先 后 。 6.若a=14,b=15,a && b的值为___________。
7.C规定,参与逻辑运算的操作数以 代表“真”,以 代表“假”。
( )9.C
)
8.字符常量使用一对 界定单个字符,而字符串常量使用一对 来界定若干个字符的序列。
9.int a[10]={1,2,3,4}; a[4]= ___________。 10.函数的参数有两种: 和 。
四、程序阅读题:(本大题共5小题,每小题2分,共10分)
1.main()
{ float x; int i; x=3.6; i=(int)x; printf(\}
输出的结果为:
2. main() { int x,y,z; x=y=1; z=++x-1; printf(\z+=y++;
printf(\}
输出的结果为:
3. main()
{ int x=4,y=0,z;
x*=3+2;
printf(\
x*=(y==(z=4));
printf(\ }
4. main()
{ char x=‘B’; switch(x)
{ case ‘A’: printf(“It is A.”);
case ‘B’: printf(“It is B.”);break; case ‘C’: printf(“It is C.”); default: printf(“other.”); } }
输出的结果为:
5.void main()
{
char ch[3][5]={ \printf(\}
输出的结果为:
五、简答题:(本大题共3小题,每小题5分,共15分)
1.C语言中标识符的命名原则有哪些?
2.C语言中常用的表示算法的工具有哪些?
3.计算机语言的发展过程经历了哪几代语言?
六、程序设计题:(本大题共4小题,每小题5分,共20分)
1.编程求下面算术表达式的值。
(float)(a+b)/2+(int)x%(int)y,设a=2,b=3,x=3.5,y=2.5。
2.编写一个程序求出任意一个输入字符的ASCII码
3. 从键盘输入一个英文字母,如果是大写字母,则将它变为小写字母输出;如果是小写字母,则将其变为大写字母输出。
4.编写程序,输入一个整数,判断它是奇数还是偶数,若是奇数,输出“Is Odd“;若是偶数,输出“Is Even“。
新疆天山职业技术学院2013-2014学年第二学期 《C语言程序设计》期末试卷(B)答案
一、单项选择题:(本题共30小题,每小题1分,共30分) 1-5 CCCBC;6-10 ADADD;11-15 ADBCA; 16-20 CBCDC;21-25 BCAAB;26-30 ADADD; 二、判断题:(本大题共10小题,每小题1分,共10分) 1-5 ××√××; 6-10 √×√√×;
三、填空题:(本大题共15空,每空1分,共15分) 1、ASCII码 ;2、1 ;3、8 ;4、6、 6 ;5、判断、执行 ;
6、非0 ;7、1、0 ;8、单引号、双引号 ;9、0 ;10、形参、实参 ; 四、程序阅读题:(本大题共5小题,每小题2分,共10分) 1、x=3.600000, i=3;2、2, 1 2,2;
3、 20,80;4、It is B ;5、BBB ;
五、简答题:(本大题共3小题,每小题5分,共15分)
1.C语言中标识符的命名原则有哪些?
答:(1)标识符由字母、下划线和数字组成,只能是字母和下划线开头;(2)标识符不能是关键字,不能是库函数名; (3)区分大小写字母;
(4)标识符前八个字符是有效字符; (5)标识符命名要见名知意。
2.C语言中常用的表示算法的工具有哪些? 答:自然语言;流程图;N-S图;伪代码等。 3.计算机语言的发展过程经历了哪几代语言? 答:机器语言-汇编语言-高级语言
六、程序设计题:(本大题共4小题,每小题5分,共20分)
1.编程求下面算术表达式的值。
(float)(a+b)/2+(int)x%(int)y,设a=2,b=3,x=3.5,y=2.5。 main()
{ int a=2,b=3;
float x=3.5,y=2.5;
printf(\2.编写一个程序求出任意一个输入字符的ASCII码 解:
#include
main() {
char c;
printf(\ scanf(\
printf(\}
本程序运行结果为:
Input a string:a
3. 从键盘输入一个英文字母,如果是大写字母,则将它变为小写字母输出;如果是小写字母,则将其变为大写字母输出。 #include
if(ch>='A'&&ch<='Z') ch+=32;
else if(ch>='a'&&ch<='z') ch-=32; putchar(ch); putchar('\\n'); }
4.编写程序,输入一个整数,判断它是奇数还是偶数,若是奇数,输出“Is Odd“;若是偶数,输出“Is Even“。
main() { int x;
scanf(\
if(x%2==0) printf(\ else printf(\