C语言考试卷及答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、选择题:(共32分,每空2分)

1.能将高级语言编写的源程序转换成目标程序的是___B___。

A) 编辑程序 B) 编译程序 C) 解释程序 D) 链接程序

2.在多媒体计算机系统中,不能用以存储多媒体信息的是__A____。

A) 光缆 B) 软盘 C) 硬盘 D) 光盘

3.以下叙述中正确的是___A___

A) 构成C程序的基本单位是函数

B) 可以在一个函数中定义另一个函数

C) main()函数必须放在其它函数之前

D) 所有被调用的函数一定要在调用之前进行定义

X4.下面那一项在C语言中是非法的常量(B)C

A.—78.33

B.“”

C. ‘ax ’

D. 5.2E-3 5.下面运算符的优先级比较,正确的是(C)

A.“!=”<“+”<“=”<“&&”

B.“&&”<“!=”<“+”<“=”

C.“=”<“&&”<“!=”<“+”

D.“+”<“!=”<“=”<“&&”

6.以下选项中合法的实型常数是___C___

A) 5E2.2 B) E-3 C) 2E3 D) 1.3E

7.以下选项中合法的用户标识符是___B___

A) long B) _2Test C) 3Dmax D) A.dat

X8.C语言中的简单数据类型包括(B)。D

A)整型,实型,逻辑型B)整型,实型,字符型,逻辑型

C)整型,字符型,逻辑型D)整型,实型,字符型

X9.要求当A的值为奇数时,表达式的值为真;A的值为偶数时,表达式的值为假,以下不满足要求的表达式是(B)C

A. A%2= =1

B.!(A%2= =0)

C.!(A%2)

D.A%2

10.有以下程序段

int n=0,p;

do {scanf("%d",&p);n++;} while(p!=12345&&n<3);

此处do-while循环的结束条件是____D__

A) p的值不等于12345并且n的值小于3

B) p的值等于12345并且n的值大于等于3

C) p的值不等于12345或者n的值小于3

D) p的值等于12345或者n的值大于等于3 11.判断char型变量ch是否为小写字母的正确表达式是(D)

A. ‘a’<=ch< ‘z’

B. (‘a’<=ch) AND (‘z’>=ch)

C. (ch>= ‘a’) & (ch<=‘z’)

D. (ch>= ‘a’) && (ch<=‘z’)

12.以下关于C语言标识符的描述中,正确的是(D)

A)标识符可以由汉字组成; B)标识符只能以字母开头;

C)关键字可以作为用户标识符; D)Area与area是不同的标识符。

13.执行语句for(i=10;i>0;i);后,变量i的值为(A)

A)10 B) 9 C)0 D)1

14.putchar函数可以向终端输出一个(A)

A. 字符或字符型变量值

B. 字符串

C. 整型变量表达式的值

D. 实型变量的值

15.若用数组名作为函数调用时的实参,则实际上传递给行参的是(B)

A. 数组首地址

B. 数组的第一个元素值

C. 数组中全部元素的值

D. 数组元素的个数

16.与十进制511等值的十六进制数为___A___。

A) 1FF B) 2FF C) 1FE D) 2FE

二、写出下列数学表达式在C语言中相应的表达式表示(每题2分,共

14分)

(1)

5

4

24

1200

-

1200/(24-4*5)

(2)c×b

a2

2

+

c*sqrt(a*a+b*b)

(3) cos2(a+b) cos(a+b)*cos(a+b)

(4) 条件“50200”(x>50)&&(100>x)||(x>200)

?(5) |a+b| abs(a+b)

?(6) b-e5 b-exp(5)

X(7) lnln(x+y) ln(ln(x+y)) log(log(x+y))

三、填空题,请在下面各小题的______内填入正确的内容。(每空2分,共 30

分)

1.下列程序的功能是求1-1000之间能同时被3,5整除的数,按每行10个数的

格式输出这些数,请完成该程序。

main()

{ int __i,j=0___________;

for(i=1;i<1000;__i++_____)

{ if (__(i%3==0)&&(i%5==0)_________)

{ printf(“%4d”,i);

j=j+1;}

if(j==10){printf(“\n”); j=0}

}

}

2.根据以下if语句所给的条件,写出等价的switch语言,使它完成相同的功能,(假设score取值在0-100之间)。请在_________内填入正确内容。

if 语句:

if(score<60)k=1;

else if (score<70)k=2;

else if(score<80)k=3;

else if(score<90)k=4;

else k=5;

等价的switch语句:

switch(score/10)

{ case 0:

case 1:

case 2:

case 3:

case 4:

case 5:________k=1________________;

case 6:________k=2________________;

case 7:________k=3________________;

case 8:________k=4________________;

case 9:

case 10:_______k=5____________;

}

3. 以下程序实现输出a,b,c三个数中的最大者,请在________内填入正确的内容。

main()

{int a=4,b=6,c=7;

int__d,e___________;

if___a>b,__________d=a; else d=b;

if____d>c,_________e=d;

else e=c;

printf(“max=%d\n”,e);

}

4.下面程序的功能是读入20个整数,统计非负数个数,并计算所有非负数的和。

#include

main()

{ int i,a[20],s,count=0;

s=0;

for(i=0;i<20;__i++____)

scanf(“%d”,__a[i]_______);

for(i=0;___ i<20____;i++)

{if (a[i]<0)

_____ count++_________;

s+=a[i];

count++;

}

printf(“s=%d\tcount=%d\n”,s,count);

}

四、编程题(24分)

1.编写程序,从键盘输入梯形的上下底边

长度和高,计算梯形的面积。(注:梯形的面积计算公式为:area=

2

1

(a+b)*h 其中a,b分别表示上、下边长,h表示高)

(6分)2.编写程序判断某年是否为闰年,闰年的条件符合如下二者之一即可:(1)能被4整除,但不能被100整除。(2)能被400整除

(8分)3.“水仙花数”是指一个三位数,它的三个数位数字的立方和这个数的数值相等,编程打印所有的水仙花数。(10分)

1.

#include "stdio.h"

相关文档
最新文档