山西中医药大学《C语言程序设计》2017-2018学年期末试卷.pdf
2017-2018(一)山西中医药大学公共课《C语言》科目期末试卷B
一、填空题
1、已有定义inta;floatb,x;charcl,c2;为使a=3、b=6.5、x=12.6、
cl=a、c2=A,正确的scan函数调用语句是_______,数据输入的形式应为
_______。
2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过
连接后,生成文件的后缀是
3、C语言源程序的基本单位是________
4、在C语言中的实型变量分为两种类型,它们是_______和_______。
5、若有定义语句:intb=7;floata=2.5,c=4.7;则表达式a+(int)(b/3*
(int)(a+c)/2)%4的值为_______
6、设x是一个整数(16bit),若要通过xly使x低8位置1,高8位不变,则y的八进
制数是_______。
7、下面add函数的功能是求两个参数的和,并将和值返回调用函数。函数中错误的部分
是_______,改正后为_______。
voidadd(floata,floatb)
{floatc;
c=a+b;
returnc;
}
8、设有宏定义如下:
#defineMIN(x,y)(x)(y)?(x):(y)
#defineT(x,y,r)x*r*y/4则执行以下语句后,s1的值为_______,s2的值
为_______。
inta=1,b=3,c=5,s1,s2;
s1=MIN(a=b,b-a);
s2=T(a++,a*++b,a+b+c);
9、设有以下宏定义:
#defineWIDTH80
#defineLENGTH(WIDTH+40)
则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。
10、若有以下定义和语句,则在程序中可通过指针pt,用*(pt[i]+j)等4种形式
引用数组元素x[i][],另3种形式分别是:_______、_______和_______。(假设ij已正
确说明并赋值。)
intx[10][6],(*pt)[6];
pt=x;
二、选择题
11、设有说明语句:charw;intx;floaty;doublez;则表达式w*x+z-y值的
数据类型为()。
A.float.B.charC.intD.double
12、下面不正确的字符串常量是()
A.abeB.1212C.oD.
13、以下叙述不正确的是()
A.一个C源程序可由一个或多个函数组成
B.一个C源程序必须包含一个main函数
C.C程序的基本组成单位是函数
D.在C程序中,注释说明只能位于一条语句的后面
14、C语言规定:在一个源程序中,main函数的位置()
A.必须在最开始B.必须在系统调用的库函数的后面
C.可以任意D.必须在最后
15、若有定义floatx[4]={1.3,2.4,5.6},y=6;,则错误的语句是()。
A.y=x[3];B.y=x+1;C.y=x[2]+1;D.x[0]=y;
16、以下C程序的运行结果是。(注:口表示空格)
#includestdio.h
intmain()
{inty=2456;
printf(y=%3o\n,y);
printf(y=%8o\n,y);
printf(y=%#8o\n,y);
return0;
}
A.y=口口口2456B.y=囗口□4630
y=口口口口口口口口2456y=口口口口口口口04630
y=########2456y=########4630
C.y=2456D.y=4630
y=口口口口2456