C语言期末考试试卷及答案2_第1页
C语言期末考试试卷及答案2_第2页
C语言期末考试试卷及答案2_第3页
C语言期末考试试卷及答案2_第4页
C语言期末考试试卷及答案2_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、单项选择题(本大题共20小题,每小题1分,共20分)

1.C语言程序由什么组成?()

A.子程序B.主程序和子程序C.函数D.过程

2.以下属于C语言中的简单数据类型的是()

A.int>floatslongB.int、float、char、boolean

C.char>byte、doubleD.int>boolean>long

3.以下那一个不是C语言合法的关键字()

A.switchB.cherC.intD.double

4.设ch是char型变量,其值为'A',则下面表达式的值是

ch=(ch>="A'&&ch<=,Z')?(ch+32):ch

A.AB.aC.ZD.z

5.若执行printf(〃%d\n”,strlen(〃a\n\〃\x41〃))语句其输出结果是()

A8B7C6D4

6.若inta,b,c;则表达式(a=2,b=5,b++,a+b)的值是()

A.7B.8C.6D.2

7.以下运算符中优先级最高的为()

A.&&B.+C.*D.=

8.数组名作为实参传递给形参时,数组名被处理为()

A该数组的长度B该数组的元素个数C该数组的首地址D该数组中各元素的值

9.表达式0x139x17的值是

A.0x04B.0x13C.0xE8D.0x17

10.执行下列程序

Sinclude"stdio.h"

main()

{printf("%d\n",NULL);}

后输出的结果是()

A.-1B.0C.1D.2

11.若有定义typedefcharSTRING[255];STRINGs;则$是()

A字符指针数组变量B字符指针变量

C字符变量D字符数组变量

12.判断char型变量cl是否小写字母的正确表达式为()

A*a<=cl<=,zB(cl>=,a)&&(cl<=,z)

C(cl>=a)&&(cl<=z)1)(,a,<=cl)||>=cl)

13.设E为表达式,以下与do…while(E);不等价的语句是()

Ado…while(!E=0);

Bdo-while(E>0l|E<0);

Cdo,,ewhile(E==0);

Ddo…while(E!=0);

14.以下程序计算园的面积,程序编译时出错,出错的原因是()

main()

/*Beginning*/

intr;floats;

acanf("%d",&r);

s=3.14*r*r;

printf("s=%f\n",s);

)

A.注释语句书写位置错误B.存放圆半径的变量r不应该定义为整型

C.输出语句格式描述符非法D.函数名书写错误

15.设charc[5]={'a','b','\0','c',''0'};则printf(“%s”,c);的输出是

()

A.'a''b'B.abC.abcD.“ab\Oc"

16.全局变量的存储类型可以定义为

A.auto或staticB.extern或register

C.auto或externD.extern或static

17.以下对C语言函数的有关描述中,正确的是()

A调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参

BC函数既可以嵌套定义又可以递归调用

C函数必须有返回值,否则不能使用函数

DC程序中有调用关系的所有函数必须放在同一个源程序文件中

18.用来将两个字符串合并为一个字符串的函数是()

AstrcmpO

Bstrcpy()

CstrlenO

Dstrcat()

19.若fp已正确定义并指向某个文件,当未遇到该文件结束标志时,函数£60六£2值()

A0B1C-1D一个非0值

20.标准库函数fputs(pl,p2)的功能是

A.从pl指向的文件中读一个字符串存入p2指向的内存

B.从p2指向的文件中读一个字符串存入pl指向的内存

C.从pl指向的内存中读一个字符串存入p2指向的文件

D.从p2指向的内存中读一个字符串存入pl指向的文件

二、填空题(本大题共10小题,每小题2分,共20分)

1.“n是大于整数m的偶数”的C语言表达式

2.在C语言中,标准输出设备、标准输入设备对应的文件指针分别是和一

3.当a=3,b=4,c=5时,写出下列各式的值a!=c的值为_,a+b>c&&b==c的

值为。

4.静态型局部变量的作用域是

5.下列函数要求计算两个整数x、y之和,并通过形参z传回该和值,请填空:

voidadd(intx,inty,z)

{=x+y;return;}

6.在C语言中,求平方根的函数是求正弦函数是

7.假设有如下结构体类型说明:

structtest{

inta;

intb;

);

用一条语句定义上述结构体类型变量x和y的正确形式为

将x的成员a和b分别赋值为3和5的正确形式为;将x的成员a和b之

和赋给y的成员a的正确形式为.

8.定义枚举类型的关键字为.

9.在c语言中,利用fopen以只读的方式打开当前目录下的a.txt文件的正确形式为

;利用fopen以只写的方式打开d盘根目录下的a.txt文件的正确形

式为«

10.定义计算园面积的宏(r为半径)ttdefineS(r)

三、程序分析题(本大题共5小题,每小题5分,共25分)

1、若运行时输入:16〈回车〉,则以下程序的运行结果是。

ftinclude<stdio.h>

main()

{intage;

printf(Inputyourage:");

scanf("%d”,&age);

if(age>=18)

printf("your$4.5yuan/hour^^);

else

printf("Your$3.Oyuan/hour^^);

}

2.写出下列程序的输出结果

main()

(

intx=100,a=10,b=20,okl=5,ok2=0;

if(a<b)if(b!=15)if(!okl)x=l;

elseif(ok2)x=10;

elsex=-l;

printf("%d\n",x);

}

3.写出下列程序的运行结果____________________________________________

#definePR(ar)printf("%d,”,ar)

main()

(

intj,a[]={2,4,6,8,10,12,14,16},*p=a+5;

for(j=3;j;j—)

switch(j)

(

case1:

case2:PR(*p++);break;

case3:PR(*(—p));

)

)

4.以下程序的执行结果是________________________________________

ftinclude<stdio.h>

main()

(

charstr□二{“la2b3c”};

inti;

for(i=0;str[i]!=,\0';i++)

if(str[i]>=,(T&&str[i]<=,9,)

printf("%c",str[i]);

printf("\n");

)

5.以下程序的执行结果是________________________________________

structst{

intx;

int*y;

)*P;

ints[]={l,2,3,4);

structsta[]={l,&s[0],2,&s[1],3,&s[2],4,&s[3]};

main()

(

P=a;

printf("%d,”,p->x);

printf("%d,”,(++p)->x);

printfC%d,",*(++p)->y);

printf(〃%d\n”,++(*(++p)->y));

)

四、程序填充题(本大题共5小题,每小题4分。共20分)

1.以下程序从键盘输入一个整数,判断其是否为偶数,请填空。

main()

scanf(,&x);

if()printf(“偶数!”);

printf(“奇数!”);

2.以下程序从键盘输入10个数,输出总和及平均数,请填空。

main()

{intk;

for(k=l,sum=0;k<=10;k++)

(

scanf("%f",&f);

)

printf(Usum=%f,\taverage二/f\n”,sum,sum/10);

)

3.以下函数用选择法对一个整数数组进行排序,请填空:

sort(intx[],intn)

inth,j,k,t;

for(h=0;;h++)

(

k=h;

for(j=h+l;j<n;j++)

if(x[j]>x[k]);

if(k!=h)

{t=x[h];x[h]=x[k];x[k]=t:}

)

)

4.以下程序用数组求Fibonacci数列的前20项,每5个一行输出,请填空:

ftinclude<stdio.h>

main()

{intI;

intf[20]={}:/*填空*/

for(I=2;I<20;I++)f[I]=f[I-2]+f[I-l];

for(I=0;I<20;I++)

(

if(I%5==0)printf();/*填空*/

printf("%12dM

)

5.下列程序的功能是将一个结构体数组写入一个文件中保存起来,请填空:

ttinclude<stdio.h>

structTest{

chara[20];

);

main(){

structTestx[3]={{"testl"},{"test2"},{"test3”}};

inti;

fp=fopen("d:\\cwz\\abc.bat","wb");

for(i=0;i<3;i++)

五、程序设计题(本大题共2小题,第一题7分,第二题8分,共15分)

1.设计一个显示文本文件内容的程序,文件名随程序执行时输入。

2.编写程序,根据输入的三个边长a、b、c,判断它们是否构成三角形,若能构成三角形,

继续判断该三角形是等边、等腰还是一般三角形,并求出此三角形的面积和周长。

参考答案:

一、单项选择题

l.C2.A3.B4.B5.D

6.B7.C8.C9.A10.B

11.D12.B13.C14.D15.B

16.C17.A18.D19.A20.C

二、填空题

1.(n>m)&&(n%2==0)

2.stdinstdout

3.10

4.定义它的函数范围内有效

5.int**z

6.sqrt()sin()

7.structtestx,yx.a=3;x.b=5y.a=x.a+x.b

8.enum

9.fopen("a.txt","r")fopen("a.txt","

10.3.14*(r)*(r)

三、程序分析题

1.Your$3.Oyuan/hour

2.-1

3.10,10,12,

4.123

5.1,2,3,5

四、程序填充题

1.intx;

x%2==0

else

2.floatf,sum;

sum=sum+f;

3.h<n-l

k=j

4.0,1

“\n”

5.FILE*fp;

fwrite(&x[i],sizeof(structtest),1,fp);

fclose(fp)

五、程序设计题

1.#include<stdio.h>

main()

{FILE*fp;

charname[20];

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论