2013年春C程序设计期中试卷
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浙江大学城市学院
2012 — 2013 学年第二学期期中考试试卷
《C程序设计基础与实验》
开课单位:计算分院;考试形式:闭卷;考试时间:2013 年 5 月 5 日;所需时间:120 分钟
注:试卷不用交,只交答题卷,请在答题卷上答题。
一、判断题(本大题共10题,每题1分,共10分)
1、赋值号左边一定是是变量。Y
2、p=++n+5;和p=5+n++;是否等价。N
3、关系表达式a=b>c 等价于a==b>c。N
4、逻辑表达式'C'&&'d' 的值为1。Y
5、if(n)和if(n!=0)不等价。N
6、在switch语句中,case后面可以是带变量的表达式。N
7、for(表达式1;表达式2;表达式3)循环体;,for循环语句先执行“表达式1”,再执行“表达
式2”,如果“表达式2”条件成立,执行“表达式3”,然后执行“循环体”。N
8、for循环一定可以用while循环实现,反之亦然。Y
9、返回语句return能立即从所在的函数退出,把值返回到原来调用的函数去继续执行。Y
10、阶乘函数调用写成fact(int n)是否正确?N
二、单选题(本大题共10题,每题2分,共20分)
11、在C语言中,要求运算数必须是整型的运算符是。
A. /
B. +
C. !=
D. %
12、除“!”以外,以下运算符优先顺序的描述中正确的是。
A. 关系运算符<算术运算符<赋值运算符<逻辑与运算符
B. 逻辑运算符<关系运算符<算术运算符<赋值运算符
C.赋值运算符<逻辑与运算符<关系运算符<算术运算符
D. 算术运算符<关系运算符<赋值运算符<逻辑与运算符
13、设float x=2.2,y=4.5; int a=7;,表达式x+a%3*(int)(x+y)%2/4值是。
A.2
B. 2.250000
C. 2.200000
D. 2.750000
14、若x是double型变量,n是int型变量,想从键盘输入3, 1.25〈回车〉,使n为3、x为
1.25,的正确语句是_____。
A.scanf("%d,%lf", n, x); B. scanf("%d,%f", &n, &x);
C. scanf("%lf,%d", n, x);
D. scanf("%lf,%d", &x, &n);
15、下列程序段输出的结果是。
int a=7,b=5,c=3;
if(a>b) a=b; c=a;
if(c!=a) c=b;
printf("%d,%d,%d\n",a,b,c);
A. 5,5,5
B. 7,5,5
C. 7,5,7
D. 7,5,3
16、下列语法正确的程序段是。
程序段1: 程序段2:
float n,i; float n,i=1;
scanf("%f",&i); scanf("%d",&i);
switch(i) switch(i)
{ case 1: n=i+1; { case i<2: n=i+1;
case 2: n=i+2; break; case i==3: n=i+2; break;
default: n=i+3; default: n=i+3;
} }
程序段3: 程序段4:
float n,i; float n,i;
scanf("%f",&i); scanf("%f",&i);
switch(int(i)) switch((int)i)
{ case …1‟: n=i+1; { case 1: n=i+1;
case …2‟: n=i+2;case 2: n=i+2; break;
default: n=i+3; default: n=i+3;
} }
A. 程序段1
B. 程序段2
C. 程序段3
D. 程序段4
17、若变量定义int i; double sum=0,下列1+2+…+10正确的程序段是。
A. for(i=1; i<=10; i++);
B. for(i=1, i<=10, i++)
sum=sum+i; sum=sum+i;
printf("%lf ",sum); printf("%f",sum);
C. for(i=1; i<=10; i++)
D. for(i=1, i<=10, i++);
sum=sum+i;sum=sum+i;
printf("%f",sum);printf("%f",sum);
18、设int k=10;,以下while 循环执行次数是。
while (k%10!=0) k=k-1;
A. 执行10次
B. 执行1次
C. 无限循环
D. 一次也不执行
19、C语言中while和do-while循环的主要区别是。
A. do-while的循环体至少无条件执行一次
B. while的循环控制条件比do-while的循环控制条件严格
C. do-while允许从外部转到循环体内
D. d o-while的循环体不能是复合语句
20、以下正确的函数是。
A. double fun(int x, int y)
B. double fun(int x, int y)
{ int z; {
z=x+y; z=x+y;
return z; return z;
} }
C. double fun(x, y)
D. double fun(int x, int y)
{ int x,y ; double z ; { i nt x, y; double z;
z=x+y ; return z ; z=x+y; return z;
} }