辽东学院 c语言 期末复习题_第1页
辽东学院 c语言 期末复习题_第2页
辽东学院 c语言 期末复习题_第3页
辽东学院 c语言 期末复习题_第4页
辽东学院 c语言 期末复习题_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

2、下面程序的功能是输出数组s中最大元素的下标。填补空出的语句,以使程序完整。main(){intk,p;ints[]={1,-9,7,2,-10,3};for(p=0,k=p;p<6;p++)if(s[p]>s[k])_____________;printf(“%d\n”,k);}一、单项选择题(每题2分,共20分)1.设x,y,z,k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为______A.4

B.16

C.32

D.522.从循环体内某一层跳出,继续执行循环外的语句是:______A.break语句

B.return语句

C.continue语句

D.空语句。3.一个C程序的执行是从______A.main()函数开始,直到main()函数结束。B.第一个函数开始,最后一个函数结束。C.第一个语句开始,最后一个语句结束。D.main()函数开始,直到最后一个函数。4.若x=5,y=3则y*=x+5;y的值为______A.

10

B.

20

C.

15

D.

305.若有以下定义,则能使值为3的表达式是:intk=7,x=12;A.x%=(k%=5)B.x%=(k-k%5)C.x%=k-k%5D.(x%=k)-(k%=5)6.C语言中用于结构化程序设计的三种基本结构是______A.if、switch、breakB.if

while

forC.while

do-while

forD.顺序结构、选择结构、循环结构7.main(){

intn;(n=6*4,n+6),n*2;printf(“n=%d\n”,n);}此程序的输出结果是______A.30

B.

24

C.

60

D.

488.在16位机上使用C语言,若有如下定义:uniondata{inti;charch;doublef;}b;则共用体变量b占用内存的字节数是________。A.所有成员字节数的总和B.2C.成员f的字节数D9.以下说法正确的是:A.输入项可以为-实型常量,如scanf("%f",3.5);B.只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");C.当输入-个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);D.当输入数据时,必须指明变量的地址,如scanf("%f",&f);10.下列对数组定义不正确的语句是______A.intm[5];

B、charb[]={‘h’,‘e’};C、inta[10]={1,6,8,4};

D、char

p[];11、能正确表示a和b同时为正或同时为负的逻辑表达式是_______。A.a>=0||b>=0)&&(a<0||b<0)

B.(a>=0&&b>=0)&&(a<0&&b<0)C.(a+b>0)&&(a+b<=0)

D.a*b>012.有如下语句:X+Y*Z>39&&X*Z||Y*Z是什么表达式_________。A.算术表达式

B.逻辑表达式

C.关系表达式

D.字符表达式二、填空题(每空2分,共20分)1.C语言中的实型变量分为两种类型,它们是______________和_____________。2.设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式______________。3、若有inta[5],*p=a;则p+2表示第

个元素的地址。4.表达式7+8>2&&25%5的结果是___________________。5.int*p的含义________________________________。6.一个变量的指针是指。7.数组int

a[3][4];共定义了___________个数组元素。8.执行以下for(i=1;i++<=5)语句后,变量i的值为______________。9、设a=12、b=24、c=36,对于“scanf(”a=%d,b=%d,c=%d“,&a,&b,&c);”,输入形式应为______________。一、选择题(每题2分,共20分)1、列正确的标识符是。A.hot_do

B.a+b

C.test!

D.%y2、设整型变量a为5,使b不为2的表达式是。A.b=a/2

B.b=6-(——a)

C.b=a%2

D.b=a>3?2:13、设x和y均为int型变量,则语句x+=y;y=x-y;x-=y;的功能是

A.把x和y按从大到小排列B.把x和y按从小到大排列

C.无确定结果D.交换x和y中的值4、以下程序的输出结果是。intx=10,y=10;printf(“%d

%d\n”,x——,——y);A.10

10

B.9

9

C.9

10

D.10

95、变量定义为inta[3]={1,4,7},*p=&a[2],则*p的值是。A.&a[2]

B.4

C.7

D.16、以下不能正确定义二维数组的语句是_________。A.inta[2][2]={{1},{2}};

B.inta[][2]={1,2,3,4};C.inta[2][2]={{1},2,3};

D.inta[2][]={{1,2},{3,4}};7、下面几种说法中哪个是正确的?_____________A.else语句需与它前面的if语句配对使用;B.else语句需与前面最接近它的if语句配对使用;C.else语句需与前面最接近它的,且没有和其它else语句配对的if语句配对;D.以上都正确。8、下面程序段的运行结果是________。charstr[]="EFC",*p=str;printf("%d\n",*(p+2));A.70B.0C.字符'F'的地址D.字符'F'9、以下程序的输出结果是。charstr[15]=“hello!”;printf(“%d\n”,strlen(str));A.15

B.14

C.7

D.610、若有如下定义,则_________是对数组元素的正确的引用。int

a[10],*p;p=a;A.*&a[10]

B.

a[11]

C.

*(p+10)

D.*p二、填空题(每空2分,共20分)1、数组是表示类型相同的数据,而结构体则是若干

数据项的集合。2、若自定义函数要求返回一个值,则应在该函数体中有一条语句,若自定义函数要求不返回一个值,则应在该函数说明时加一个类型说明符。3、下列程序段的输出是___。int*p,*q,k=5,j=6;q=&k;p=q;q=&j;printf("%d",*p);4、在C语言中,字符串常量是用

括起的一串字符。5、语句for(i=1;i==1;++i);循环次数是,退出循环后i=。6、C语言的表达式与语句的区别在于。7、给定声明intx=5,y=4;,表达式x+=y++的值是,执行该表达式后,x,y的值是,。一、选择题(每小题2分,共20分)1、在C程序中有如下语句:char*func(intx,inty);它是。A.对函数func的定义。

B.对函数func的调用。C.对函数func的原型说明。

D.不合法的。2、对于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++)3、若c,c1,c2均为字符型变量,下列语句执行后。c='a';c1=++c;c2=c++;c1,c2的值分别为。A、c1='b',c2='c'B、c1='a',c2='c'C、c1='b',c2='b'D、c1='a',c2='b'4、执行语句:printf(“%d”,(a=2)&&(b=-2));后,输出结果是______。A.无输出

B.结果不确定

C.-1

D.15、若变量c为char类型,能正确判断出c为小写字母的表达式是______.A.‘a’<=c<=‘z’

B.(c>=‘a’)||(c<=‘z’)C.(‘a’<=c)and(‘z’>=c)

D.(c>=‘a’)&&(c<=‘z’)6、设单精度变量f,g均为5.0,使f为10.0的表达式是________.A.

f+=g

B.

f-=g+5

C.

f*=g-15

D.

f/=g*107、已有定义intx=3,y=4,z=5;则表达式“!(x+y)+z-1&&y+z/2”的值是_______.A.6

B.0

C.2

D.18、设a=1,b=2,c=3,d=4,则表达式:a<b?a:c<d?a:d的结果是()A.4

B.3

C.2

D.19、设a为整型变量,不能正确表达数学关系:10<a<15的C语言表达式是()A.10<a<15

B.a==11||a==12||a==13||a==14C.a>10&&a<15

D.!(a<=10)&&!(a>=15)10、以下说法中正确的是______________.A、在C程序中,每行只能写一条语句B、若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数据C、在C程序中,%是只能用于整数运算的运算符D、在C程序中,无论是整数还是实数,都有能被准确无误地表示二、填空题(每空2分,共20分)(1)、组成数组元素的特点是_________________;组成结构体元素的特点是___________________.(2)C语言提供的三种逻辑运算符是、、。(3)C程序设计中语句后的符号/*……*/所起作用是______________。(4)在循环中,continue语句与break语句的区别是:continue语句是_______,break是______。(5)在C语言中,正确的标识符是由组成的,且由开头的。(6)数组是表示类型相同的数据,而结构体则是若干

数据项的集合。(7)C语言中putchar(c)函数的功能是______________________________。三、判断题(每题1分,共10分)1、C语言源程序文件通过了编译、连接之后,生成一个后缀为.EXE的文件。(

)2、在C程序中,函数既可以嵌套定义,也可以嵌套调用。()3、表达式1/2与表达式1.0/2.0的结果相同。

()4、构成数组的各个元素可以有不同的数据类型。

)5、在定义二维数组时,可以将该数组的两个维数全部省略

)6、C语言中字符串的结束符是‘\0’。()7、do一while循环由do开始,用while结束,在while(表达式)后面不能写分号。()8、C程序总是从main()函数的第一条语句开始执行的。()9、只能在循环体内和switch语句体内使用break语句。(

)10、字符串"That"小于字符串"the"。(

)四、将下列程序补充完整(每空2.5分,共10分)1、输入三角形的三条边a,b,c,求三角形的面积。#include“math.h”#include“stdio.h”main(){float

a,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、编写程序,输入n个整数(n由键盘输入),统计其中正数、负数和零的个数。#include“stdio.h”main(){intx,n,k,k1=0,k2=0,k3=0;printf(“inputn=:”);(3)for(k=0;k<n;k++){scanf(“%d”,&x);if(x<0)k1++;(4);else

k3++;printf(“k1=%4d,k2=%4d,k3=%4d\n”,k1,k2,k3)}}五、读程序题(每题5分,共10分)1、4.

main(){staticinta[][3]={9,7,5,3,1,2,4,6,8};inti,j,s1=0,s2=0;i,j,s1=0,s2=0;for(i=0;i<3;i++)for(j=0;j<3;j++){if(i==j)s1=s1+a[i][j];if(i+j==2)s2=s2+a[i][j];}printf(“%d\n%d\n”,s1,s2);}2、intfun(intn){if(n>0)

returnn*fun(n-1);else

return1;}main(){

inta=fun(4);

printf(″a=%d\n″,a);}程序运行结果:____________________一、选择题(每小题2分,共20分)1.若有代数式3ae/bc,则不正确的C语言表达式是:A)a/b/c*e*3B)3*a*e/b/cC)3*a*e/b*cD)a*e/c/b*32.设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i个元素的地址为。A.P+i*2

B.

P+(i-1)*2

C.

P+(i-1)

D.

P+i3.以下能正确定义整型变量a、b、c并为其赋初值5的语句是。A.int

a=b=c=5;

B.int

a,c,c=5;C.a=5,b=5,c=5;

D.a=b=c=5;4、若有说明inta[3][4];则对a数组元素的正确引用是A.a[2][4]

B.a[1,3]

C.a[1+1][0]

D.a(2)(2)5、设inta=5,b,*p=&a,则使b不等于5的语句为:A.b=*&a

B.b=*a

C.b=*p

D.b=a6.下面程序段的运行结果是charc[5]={'a','b','\0','c','\0'};printf("%s",c);}A.’a’’b’B.abC.abcD.a,b7.已知各变量的类型说明如下:intk,a,b;unsignedlongw=5;doublex=1.42;则以下不符合C语言语法的表达式是:A)x%(-3)B)w+=-2C)k=(a=2,b=3,a+b)D)a+=a-=(b=4)*(a=3)8、不是C语言实型常量的是:A.55.0

B.0.0

C.55.5

D.55e2.59.已有定义inta=-2;和输出语句:printf("%8lx",a);以下正确的叙述是:A.整型变量的输出格式符只有%d-种B.%x是格式符的-种,它可以适用于任何-种类型的数据C.%x是格式符的-种,其变量的值按+六进制输出,但%8lx是错误的D.%8lx不是错误的格式符,其中数字8规定了输出字段的宽度10.字符串“xyzw”在内存中占用的字节数是:。A.6

B.5

C.4

D.3二、填空题(每空2分,共20分)1.语句printf(″s\\t″)的输出结果为。2.C程序设计的三种基本结构是_______、________、________。3.已知整型变量a=3,b=4,c=5,写出逻辑表达式a||b+c>c&&b-c的值是。4.若有说明和语句:inta=25,b=60;b=++a;则b的值是

。5.若有定义:charc=‘\010’;则变量c中包含的字符个数是。6.在C语言中,二维数组元素在内存中的存放顺序是。若有定义:doublex[3][5];则x数组中行下标的下限为,列小标的上限为7.数组int

a[5][4];共定义了______个数组元素。8.设整型变量n的值为2,执行语句“n+=n-=n*n”后,n的值是__。三、判断题(每小题1分,共10分)1.逻辑运算符&&、||

、!的运算顺序是!优先于&&优先于||。

()2、在循环过程中,使用break语句和continue语句的作用是一样的(

)3.数组的下标从1始。(

)4.数组名可以作为参数进行传递。(

)5.C语言的一个特点是可以对计算机硬件进行操作

。(

)6.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。(

)7.选择结构不可以使用嵌套形式,但是循环结构可以使用嵌套形式。(

)8.C语言中字符串的结束符是‘\0’。(

)9、逻辑运算符两侧运算对象的数据类型只能是0或1。(

)10.一个C程序的执行是从本程序的main函数开始,到本程序文件的最后一个函数结束。(

)11.getchar()函数的功能是从键盘上输入一个字符串。

)12、inti=20;switch(i/10){case2:printf("A");case1:printf("B");}输出结果为A。()13.在定义二维数组时,可以将该数组的两个维数全部省略

)14.若有说明intc;则while(c=getchar());是错误的C语句。(

)15.10、在C程序中,APH和aph代表不同的变量。(

)一、选择题(每题2分,共20分)1.

C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是A.地址传递B.单向值传递C.由实参传给形参,再由形参传回给实参D.由用户指定传递方式2.在C语言中,要求运算数必须是整型的运算符是A、/

B、++

C、!=

D、%3、若有以下定义语句doublea[8],*p=a;

inti=5;对数组元素错误的引用是A.*a

B.*a[5]

C.*(p+i)

D.p[8]4.下面标识符中正确的是。 A、a#bc

B、123ABC

C、sime

D、Y·M·D5.

以下正确的函数定义形式是。

A.doublefun(intx,inty);B.doublefun(intx;inty)

C.doublefun(intx,inty)D.doublefun(intx,y)6.

以下对二维数组a进行正确初始化的是(

)A.inta[2][3]={{1,2},{3,4},{5,6}};

B.inta[][3]={1,2,3,4,5,6};C.inta[2][]={1,2,3,4,5,6};

D.inta[2][]={{1,2},{3,4}};7.执行语句“x=(a=4,b=a--)”后,x,a,b的值依次是A、4,4,3

B、4,3,3

C、4,3,34

D、3,4,38.C语言中while和do—w

温馨提示

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

评论

0/150

提交评论