C语言期末考试试题三篇.docx

上传人:b****7 文档编号:9757699 上传时间:2023-02-06 格式:DOCX 页数:18 大小:19.80KB
下载 相关 举报
C语言期末考试试题三篇.docx_第1页
第1页 / 共18页
C语言期末考试试题三篇.docx_第2页
第2页 / 共18页
C语言期末考试试题三篇.docx_第3页
第3页 / 共18页
C语言期末考试试题三篇.docx_第4页
第4页 / 共18页
C语言期末考试试题三篇.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

C语言期末考试试题三篇.docx

《C语言期末考试试题三篇.docx》由会员分享,可在线阅读,更多相关《C语言期末考试试题三篇.docx(18页珍藏版)》请在冰豆网上搜索。

C语言期末考试试题三篇.docx

C语言期末考试试题三篇

C语言期末考试试题三篇

篇一:

20XX年C语言试题

一选择题(7分,每小题0.5分)

1.C语言源程序的基本单位是()。

A过程

B函数

C子程序

D标识符

2.下列程序的输出结果是()。

main()

{inta=7,b=5;

printf("%d\n",b=b/a);

}

A5

B1

C0D不确定值

3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?

a++:

b++,a+b)的值是()。

A7

B8

C9

D2

4.设a为int型变量,执行下列赋值语句后,a的取值分别是()。

a=12

5.534;a=(int)125.521%4;a=5<<2;

A125,31,1

B125,1,20

C125,31,20

D125.534,2,20

5.设有如下程序段,下面描述中正确的是()。

intk=10;while(k=0)k=k-1;

A循环执行一次B循环是无限循环C循环体语句一次也不执行

D循环体语句执行一次

6.以下程序的输出结果为()。

inti;

voidprt()

{for(i=5;i<8;i++)printf("%c",'*');

printf("\t");

}

main()

{for(i=5;i<=8;i++)prt();

}

A***

B************

C******

D***

7.在C语言程序中,以下说法正确的是()。

A函数的定义可以嵌套,但函数的调用不可以嵌套

B函数的定义不可以嵌套,但函数的调用可以嵌套

C函数的定义和函数的调用都不可以嵌套

D函数的定义和函数的调用都可以嵌套

8.以下函数调用语句中含有()个实参。

func((e1,e2),(e3,e4,e5));

A2

B3

C5

D语法错误

9.以下程序的输出结果为()。

#defineADD(x)x*x

main()

{inta=4,b=6,c=7,d=ADD(a+b)*c;

printf("d=%d",d);

}

Ad=70

Bd=80

Cd=140

Dd=700

10.已知职工记录描述如下,在TurboC中,系统为变量w分配()字节的空间。

structworker

{intno;

charname[20];

charsex;

union

{intday;intmonth;intyear;}birth;

}w;

A29

B20

C25

D6

11.设有以下定义,值为5的枚举常量是()。

enumweek{sun,mon=4,tue,wed,thu,fri,sat}w;

Atue

Bsat

Cfri

Dthu

12.下面选项中正确的赋值语句是(设chara[5],*p=a;)()。

Ap="abcd";

Ba="abcd";

C*p="abcd";

D*a="abcd";

13.设有以下程序段,则值为6的表达式是()。

structst{intn;structst*next;};

staticstructsta[3]={5,&a[1],7,&a[2],9,0},*p;

p=&a[0];

Ap++->n

B++p->n

Cp->n++

D(*p).n++

14.C语言中的文件类型只有()。

A索引文件和文本文件两种

B文本文件一种

C二进制文件一种

DASCII码文件和二进制文件两种二判断对错,对的划“√”,错的划“×”(5分,每小题0.5分)1.在TurboC中,整型数据在内存中占2个字节。

()

2.inti=20;switch(i/10){case2:

printf("A");case1:

printf("B");}的输出结果为A。

()

3.break语句用在循环体中,可结束本层循环,continue语句用在循环体中,可结束本次循环。

()

4.函数的递归调用不过是一个函数直接或间接地调用它自身。

()5.函数strlen("ASDFG\n")的值是7。

()

6.通过return语句,函数可以带回一个或一个以上的返回值。

()7.结构体类型只有一种。

()

8.char*p="girl";的含义是定义字符型指针变量p,p的值是字符串"girl"。

()

9.若有定义:

char*p(chara[10]);则p是函数名。

()

10.用fopen("file","r+");打开的文件"file"可以进行修改。

()答案

一选择题(7分,每小题0.5分)

1.B

2.C

3.B

4.B

5.C

6.A

7.B

8.A

9.A10.C

11.A12.A13.B14.D

二判断对错,对的划“√”,错的划“×”(5分,每小题0.5分)1.×2.×3.√4.√5.×

6.×

7.×

8.×

9.√10.√

1选择题(24分,每小题2分)

1.已知函数fread的调用形式为fread(buffer,size,count,fp),其中buffer代表的是()。

A存放读入数据项的存储区

B存放读入数据的地址或指向此地址的指针

C一个指向所读文件的文件指针

D一个整形变量,代表要读入的数据项总数

2.以下程序的输出结果为()。

main()

{inti=010,j=10;

printf("%d,%d\n",i++,j--);}

A11,9

B9,10

C8,10

D9,9

3.设a为int型变量,执行下列赋值语句后,a的取值分别是()。

a=125.534;a=20.0/3;a=(int)125.521%4;a=5<<2;

A125,6,31,1

B125,6,1,20

C125,6.666666,31,20

D125.534,6.666666,2,20

4.设i和k都是int类型,则for循环语句()。

for(i=0,k=-1;k=1;i++,k++)printf("****\n");

A循环结束的条件不合法

B循环体一次也不执行

C循环体只执行一次

D是无限循环

5.以下程序的输出结果为()。

main()

{charc;

inti;

for(i=65;i<68;i++)

{c=i+32;

switch(c)

{case'a':

case'b':

case'c':

printf("%c,",c);break;default:

printf("end");}

}

}

Aa,b,c,end

Ba,a,a,end

Ca,a,a,

Da,b,c,

6.函数调用语句:

fseek(fp,-10L,2);的含义是()。

A将文件位置指针从文件末尾处向文件头的方向移动10个字节

B将文件位置指针从当前位置向文件头的方向移动10个字节

C将文件位置指针从当前位置向文件末尾方向移动10个字节

D将文件位置指针移到距离文件头10个字节处

7.以下程序的输出结果为()。

main()

{chars1[40]="country",s2[20]="side";

inti=0,j=0;

while(s1[i]!

='\0')i++;

while(s2[j]!

='\0')s1[i++]=s2[j++];

s1[i]=0;

printf("%s\n",s1);

}

Aside

Bcountry

Csidetry

Dcountryside

8.下列说法不正确的是()。

A主函数main中定义的变量在整个文件或程序中有效

B不同函数中,可以使用相同名字的变量

C形式参数是局部变量

D在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效

9.在下列程序段中,枚举变量c1的值是()。

enumcolor{red,yellow,blue=4,green,white}c1;c1=yellow;c1=white;

A1

B3

C5

D6

10.设有说明int(*ptr)();其中标识符ptr是()。

A是一个指向整形变量的指针

B是一个指针,它指向一个函数值是int的函数

C是一个函数名D定义不合法

11.定义由n个指向整形数据的指针组成的数组p,其正确的方式为()。

Aintp;

Bint(*p)[n];

Cint*p[n];

Dint(*p)();12.具有相同类型的指针类型变量p与数组a,不能进行的操作是()。

Ap=a;

B*p=a[0];

Cp=&a[0];

Dp=&a;

二判断对错,对的划“√”,错的划“×”(20分,每小题2分)1.参加位运算的数据可以是任何类型的数据。

()

2.若有定义和语句:

inta;charc;floatf;scanf("%d,%c,%f",&a,&c,&f);若通过键盘输入:

10,A,12.5,则a=10,c=‘A’,f=12.5。

()

3.C语言把文件看作是一个字符(字节)的序列。

()

4.若有宏定义:

#defineS(a,b)t=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的。

()

5.在TurboC中,下面的定义和语句是合法的:

file

*fp;fp=fopen("a.txt","r");()

6.若有定义:

chars[]="china";则TurboC系统为数组s开辟

6个字节的内存单元。

()

7.若有定义和语句:

inta[3][3]={{3,5},{8,9},{12,35}},i,sum=0;for(i=0;i<3;i++)sum+=a[i][2-i];则sum=21。

()

8.若有定义和语句:

structstudent{intnum;charname[10];floatscore;}

s[5]={{1,"lili",98.5},{9,"xiaohua",66}},*p=s;printf("%d",*p

++);输出结果是1。

()

9.在程序中定义了一个结构体类型后,可以多次用它来定义具有该

类型的变量。

()

10.在TurboC中,此定义和语句是合法的:

enumaa{a=

5,b,c}bb;bb=(enumaa)5;()

答案

一选择题(24分,每小题2分)

1.(B)

2.(C)

3.(B)

4.(D)

5.(D)

6.(A)

7.(D)8.(A)9.(D)10.(B)

11.(C)12.(D)

二判断对错,对的划“√”,错的划“×”(20分,每小题2分)1.(×)2.(√)3.(√)4.(×)5.(×)

6.(√)

7.(√)

8.(×)

9.(√)10.(√)

篇二:

20XX年C语言期末试卷

一、单项选择题。

(每题1分,共20分)

1.C程序的基本单位是:

()

A.子程序

B.程序

C.子过程

D.函数

2.在C语言中,非法的八进制是:

()

A.016

B.018

C.017

D.02

3.不是C语言实型常量的是:

()

A.55.0

B.0.0

C.55.5

D.55e2.5

4.字符串“xyzw”在内存中占用的字节数是:

()

A.6

B.5

C.4

D.3

5.若已定义f,g为double类型,则表达式:

f=1,g=f+5/4的值是:

()

A.2.0

B.2.25

C.2.1

D.1.5D.1.5

D.1.5D.1.5

6.若有语句charc1=`d`,c2=`g`;printf(“%c,%d\n”,c2-`a`,c2-c1);则输出结果为:

()

(a的ASCII码值为97)

A.M,2

B.G,3

C.G,2

D.D,g

7.使用语句scanf(“a=%f,b=%d”,&a,&b);输入数据时,正确的数据输入是:

()

A.a=2.2,b=3

B.a=2.2b=3

C.2.2

3D.2.2,3

8.表示关系12<=x<=y的C语言表达式为:

()

A.(12<=x)&(x<=y)

B.(12<=x)&&(x<=y)

C.(12<=x)|(x<=y)

D.(12<=x)||(x<=y)

9.设x=1,y=2,m=4,n=3,则表达式x>y?

x:

m

y:

n的值为:

()

A.1

B.3

C.2

D.4

10.若有说明和语句:

inta=5,b=6;b*=a+1;则b的值为:

()

A.5

B.6

C.31

D.36

11.设整型变量s,t,c1,c2,c3,c4的值均为2,则执行语句(s=c1==c2)||(t=c3>c4)后,s,t的值为:

()

A.1,2

B.1,1

C.0,1

D.1,0

12.语句for(a=0,b=0;b!

=100&&a<5;a++)scanf(“%d”,&b);scanf最多可执行次数为:

()

A.4

B.6

C.5

D.1

13.对于for(s=2;;s++)可以理解为:

()

A.for(s=2;0;s++)

B.for(s=2;1;s++)

C.for(s=2;s<2;s++)

D.for(s=2;s>2;s++)

14.若有charh=`a`,g=`f`;inta[6]={1,2,3,4,5,6};则数值为4的表达式为:

()

A.a[g-h]

B.a[4]

C.a[`d`-`h`]

D.a[`h`-`c`]

15.设:

chars[10]={“october”};则printf(“%d\n”,strlen(s));输出是:

()

A.7

B.8

C.10

D.11

16.若有inta[3][5]={2,2},{2,6},{2,6,2}},则数组a共有个元素:

()

A.8

B.5

C.3

D.15

17.设inta=5,b,*p=&a,则使b不等于5的语句为:

()

A.b=*&a

B.b=*a

C.b=*p

D.b=a

18.若有inta[7]={1,2,3,4,5,6,7},*p=a则不能表示数组元素的表达式是:

()

A.*p

B.*a

C.a[7]

D.a[p-a]

19.若有intb[4]={0,1,2,3},*p则数值不为3的表达式是:

()

A.p=s+2,*(p++)

B.p=s+3,*p++

C.p=s+2,*(++p)

D.s[3]

20.设有如下定义:

structjan{inta;floatb;}c2,*p;若有p=&c2;则对c2中的成员a的正确引用是:

()

A.(*p).c2.a

B.(*p).a

C.p->c2.a

D.p.c2.a

二、填空题。

(每空1分,共15分)

1.C语言标识符由_________、__________和___________来构造。

2.在C语言中,字符串常量是用一串字符。

3.若有说明和语句:

inta=25,b=60;b=++a;则b的值是。

4.若intx=5;while(x>0)printf(“%d”,x--);的循环执行次数为。

5.若有inta[5],*p=a;则p+2表示第个元素的地址。

6.若有说明和语句:

inta=5,b=6,y=6;b-=a;y=a++则b和y的值分别是、。

7.已知整型变量a=3,b=4,c=5,写出逻辑表达式a||b+c>c&&b-c的值是。

8.C程序设计的三种基本结构是________、________和________。

9.数组是表示类型相同的数据,而结构体则是若干数据项的集合。

10.C语言中文件是指

三、将下列程序补充完整。

(每空2.5分,共30分)

1.输入三角形的三条边a,b,c,求三角形的面积。

#include“math.h”

#include“stdio.h”

main()

{floata,b,c,d,t,s;

printf(“请输入三角形的三条边:

”);

scanf(“%f,%f,%f”,&a,&b,&c);

if

(1)

printf(“%f%f%f不能构成三角形!

”,a,b,c);

else{t=(a+b+c)/2;

s=

(2)

printf(“a=%7.2f,b=%7.2f,c=%7.2f,area=%7.2f\n”,a,b,c,s);}}

(2)

2.输入两个整数,n1,n2(要求n1

#include“stdio.h”

main()

{intn1,n2,j,n=0;

printf(“\n请输入两个数:

”);

scanf((3));

if(n1>n2){(4)}

for(j=n1;j<=n2,j++)

if(5)n++;

printf(“a=%5d,b=%5d,n=%5d\n”n1,n2,n);}

(3)

(4)

3.输入两个整数,n1,n2(要求n1

#include“math.h”

#include“stdio.h”

intprime(intx)

{intk;

for(6)

if(x%k==0)return(0);

return

(1)}

main()

{inta,b,j,n=0;

printf(“\n请输入两个数:

”);

scanf(“%d,%d”,&a,&b);

if(a>b){(7)}

for(j=a;j<=b,j++)

if((8))n++;

printf(“a=%4d,b=%4d,n=%4d\n”a,b,n);}

(7)

(8)

4.编写程序,输入n个整数(n由键盘输入),统计其中正数、负数和零的个数。

#include“stdio.h”

main()

{intx,n,k,k1=0,k2=0,k3=0;

printf(“inputn=:

”);

(9)

for(k=0;k

{scanf(“%d”,&x);

if(x<0)k1++;

(10);

elsek3++;

printf(“k1=%4d,k2=%4d,k3=%4d\n”,k1,k2,k3)}}

(10)

5.设计一个程序完成以下功能:

若从键盘输入英文字母,则原样输出;输入其他字符不理会,直到输入Q键结束.]

#include“stdio.h”

main()

{charch;

do{ch=getchar();

if((11))break;

elseif((12))putchar(ch);

}while

(1);}

(11)

(12)

四、按格式写出程序运行结果。

每题4分,共16分。

1.格式化输出函数]

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 广告传媒

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1