第五套试题.docx

上传人:b****5 文档编号:11896108 上传时间:2023-04-08 格式:DOCX 页数:11 大小:19.02KB
下载 相关 举报
第五套试题.docx_第1页
第1页 / 共11页
第五套试题.docx_第2页
第2页 / 共11页
第五套试题.docx_第3页
第3页 / 共11页
第五套试题.docx_第4页
第4页 / 共11页
第五套试题.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

第五套试题.docx

《第五套试题.docx》由会员分享,可在线阅读,更多相关《第五套试题.docx(11页珍藏版)》请在冰豆网上搜索。

第五套试题.docx

第五套试题

第五套试题

一、单项选择题(30个小题,每题2分,共60分):

1.一个C语言程序的执行是从_____。

A.main函数开始,直到main函数结束B.第一个函数开始,直到最后一个函数结束

C.第一个函数开始,直到最后一个语句结束D.main函数开始,直到最后一个函数结束

2.设ch是char型变量,其值为‘A’,且有表达式:

ch=(ch>=‘A’&&ch<=‘Z’)?

(ch+32):

ch,该表达式的值为_____。

A.AB.aC.ZD.z

3.在C语言中,合法的字符常量是_____。

A.‘\084’B.‘\x43’C.‘ab’D.“\0”

4.当运行以下程序时,在键盘上从第一列开始输入9876543210(此处代表Enter),则程序的输出结果是_____。

main()

{inta;floatb,c;

scanf(“%2d%3f%4f”,&a,&b,&c);

printf(“\na=%d,b=%f,c=%f\n”,a,b,c);

}

A.a=98,b=765,c=4321B.a=10,b=432,c=8765

C.a=98,b=765.000000,c=4321.000000D.a=98,b=765.0,c=4321.0

5.以下叙述正确的是_____。

A.do_while语句构成的循环不能用其它语句构成的循环来代替

B.do_while语句构成的循环只能用break语句退出

C.用do_while语句构成循环时,只有在while后的表达式为非零时结束循环

D.用do_while语句构成循环时,只有在while后的表达式为零时结束循环

6.以下的序的输出结果是_____。

main()

{intx=10,y=3;printf(“%d\n”,y=x/y);}

A.0B.1C.3D.不确定的值

7.以下程序段的输出结果是_____。

intk,j,s;

for(k=2;k<6;k++,k++)

{s=1;

for(j=k;j<6;j++)s+=j;

}

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

A.9B.1C.11D.10

8.设有如下函数:

ggg(float*x)

{printf(“%d\n”,*x);}则函数的类型是_____。

A.与参数x的类型相同B.voidC.intD.无法确定

9.C语言源程序的基本单位是_____。

A.过程B.函数C.子程序D.标识符

10.以下程序的输出结果是_____。

doublef(intn)

{inti;doubles=1.0;

for(i=1;i<=n;i++)s+=1.0/i;

returns;

}

main()

{inti,m=3;floata=0.0;

for(i=0;i

printf(“%f\n”,a);

}

A.5.500000B.3.000000C.4.000000D.8.25

11.以下程序的输出结果是_____。

f(inta)

{intb;staticintc=3;

b++;c++;

return(a+b+c);

}

main()

{inta=2,i;

for(i=0;i<3;i++)printf(“%d\n”,f(a));

}

A.7B.7C.7D.7

89107

911137

12.若a、b、c1、c2、x、y均是整型变量,正确的switch语句是_____。

A.switch(a+b);

{case1:

y=a+b;break;

case3:

y=a-b;break;

}

B.switch(a*a+b*b)

{case3;

case1:

y=a+b;break;

case3:

y=a-b;break;

C.switcha

{casec1:

y=a-b;break;

casec2:

y=a*b;break;

default:

x=a+b;

}

D.switch(a-b)

{default:

y=a*b;break;

case3:

case4:

x=a+b;break;

case10:

case11:

y=a+b;break;

13.在C语言中,以下所列的各函数首部正确的是_____。

A.voidplay(vara:

Integer,varb:

Integer)B.voidplay(inta,b)

C.voidplay(inta,intb)D.voidplay(aAsInteger,bAsInteger)

14.设x和y均为int型变量,则以下语句:

x+=y;y=x-y;x-=y;的功能是_____。

A.把x和y按从大到小排序B.把x和y按从小到大排序C.无确定结果D.交换x和y中的值

15.在执行以下程序时,如果从键盘上输入:

ABCdef<回车>,则输出为_____。

#include

main()

{charch;

while((ch=getchar())!

=‘\n’)

{if(ch>=‘A’&&ch<=‘Z’)ch=ch+32;

elseif(ch>=‘a’&&ch<=‘z’)ch=ch-32;

printf(“%c”,ch);

}

}

A.ABCdefB.abcDEFC.abcD.DEF

16.下列程序的运行结果是_____。

main()

{inti,j,x=0;

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

{x++;

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

{if(j%2)break;

x++;

}

x++;

}

printf(“x=%d”,x);

}

A.x=4B.x=8C.x=6D.x=12

17.为表示关系x≥y≥z,应使用的C语言表达式是_____。

A.(x>=y)&&(y>=z)B.(x>=y)AND(y>=z)C.(x>=y>=z)D.(x>=y)&(y>=z)

18.设有语句chara=‘\72’;则变量a_____。

A.包含1个字符B.包含2个字符C.包含3个字符D.说明不合法

19.下面程序的输出结果是_____。

#include“stdio.h”

main()

{intnum=0;

while(num<=2)

{num++;

printf(“%d\n”,num);

}

}

A.1B.2C.1D.1

222

33

4

20.下面程序的输出结果是_____。

voidfun(int*x,int*y)

{printf(“%d%d”,*x,*y);*x=3;*y=4;}

main()

{intx=1,y=2;

fun(&y,&x);printf(“%d%d”,x,y);}

A.2143B.1212C.1234D.2112

21.下面程序的输出结果是_____。

#include“stdio.h”

#include“string.h”

main()

{char*p1=“abc”,*p2=“ABC”,str[50]=“xyz”;

strcpy(str+2,strcat(p1,p2));

printf(“%s\n”,str);

}

A.xyzabcABCB.zabcABCC.yzabcABCD.xyabcABC

22.以下程序的输出结果是_____。

voidprtv(int*x)

{printf(“%d\n”,++*x);}

main()

{inta=25;

prtv(&a);

}

A.23B.24C.25D.26

23.以下程序中的for循环执行的次数是_____。

#defineN2

#defineMN+1

#defineNUM(M+1)*M/2

main()

{inti;

for(i=1;i<=NUM;i++);

printf(“%d\n”,i);

}

A.5B.6C.8D.9

24.以下对二维数组a进行不正确初始化的是_____。

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

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

25.若有定义和语句:

chars[10];

s=“abcd”;

printf(“%s\n”,s);则结果是_____。

A.abcdB.aC.“abcd”D.编译不通过

26.执行下列程序后,y的值是_____。

main()

{inta[]={2,4,6,8,10},y=1,*p,x;

p=&a[1];

for(x=0;x<3;x++)y+=*(p+x);

printf(“%d\n”,y);

}

A.17B.18C.19D.20

27.以下程序的输出结果是____。

main()

{chars[]=“ABCD”,*p;

for(p=s;p

}

A.ABCD

BCD

CD

D

B.A

B

C

D

C.D

C

B

A

D.ABCD

ABC

AB

A

28.对于如下的结构体定义:

structdate{intyear,month,day;};

structworklist

{charname[20];

charsex;

structdatebirthday;

}person;若对变量person的出生年份进行赋值,_____是正确的赋值语句。

A.year=1976;B.birthday.year=1976;C.person.birthday.year=1976;D.person.year=1976;

29.以下程序的输出结果是_____。

main()

{intaa[3][3]={{2},{4},{6}},i,*p=&aa[0][0];

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

{if(i==0)aa[i][i+1]=*p+1;

else++p;

printf(“%d”,*p);

}

printf(“\n”);

}

A.23B.26C.33D.36

30.根据以下定义,能输出字母‘M’的语句是_____。

structperson{charname[9];intage;};

structpersonclass[4]={“John”,17,“Paul”,19,“Mary”,18,“Adam”,16};

A.printf(“%c\n”,class[3].name);B.printf(“%c\n”,class[3].name[1]);

C.printf(“%c\n”,class[2].name[1]);D.printf(“%c\n”,class[2].name[0]);

二、读下面程序,写出执行结果(5个小题,每题4分,共20分):

1.inti,j,m=0;

for(i=1;i<=15;i+=4)

for(j=3;j<=19;j+=4)m++;

printf(“%d\n”,m);

2.f(intb[],intn)

{inti,r=1;

for(i=0;i<=n;i++)r=r*b[i];

returnr;

}

main()

{intx,a[]={2,3,4,5,6,7,8,9};

x=f(a,3);

printf(“%d\n”,x);

}

3.若输入“adequacy”,写出程序的执行结果。

#include

main()

{charc;intv0=0,v1=0,v2=0;

while((c=getchar())!

=‘\n’)

{switch(c)

{case‘a’:

case‘e’:

case‘i’:

case‘o’:

case‘u’:

v1++;

default:

v0++;v2++;

}

}

printf(“v0=%d,v1=%d,v2=%d\n”,v0,v1,v2);

}

4.main()

{chara[]=“ABCDEDGH”,b[]=“abCDefGh”,*p1=a,*p2=b;

intk;

for(k=0;k<=7;k++)

if(*(p1+k)==*(p2+k))printf(“%c”,*(p1+k));

printf(“\n”);

}

5.若输入“Iamaboy!

”,写出程序的执行结果。

charconnect(char*string1,char*string2,char*string)

{inti,j;

for(i=0;string1[i]!

=‘\0’;i++)string[i]=string1[i];

for(j=0;string2[j]!

=‘\0’;j++)string[i+j]=string2[j];

string[i+j]=‘\0’;

}

main()

{chars1[100],s2[100],s[100];

printf(“输入string1:

\n”);scanf(“%s”,s1);

printf(“输入string2:

\n”);scanf(“%s”,s2);

connect(s1,s2,s);

printf(“%s\n”,s);

}

三、编写程序题(3个小题,共20分):

1.利用scanf函数输入三个整数,按从小到大的顺序输出。

(5分)

2.求n!

,即计算1*2*3*…*n的值。

(5分)

3.输入10个学生的成绩,求平均成绩,并将低于平均成绩的分数输出。

(10分)

要求:

(1)使用-数组存放成绩,数组名为score。

(2)编写三个函数,函数input:

输入学生成绩,

函数average:

求平均成绩,

函数result:

将低于平均成绩的分数输出。

 

第五套试题

一、单项选择题(30个小题,每题2分,共60分):

1.A2.B3.B4.C5.D6.C7.D8.C9.B10.A

11.A12.D13.C14.D15.B16.C17.A18.A19.C20.A

21.D22.D23.C24.D25.D26.B27.A28.C29.A30.D

二、读下面程序,写出执行结果(5个小题,每题4分,共20分):

1.202.1203.v0=8,v1=4,v2=84.CDG5.Iam

三、编写程序题(3个小题,共20分):

1.利用scanf函数输入三个整数,按从小到大的顺序输出。

(5分)

main()

{inta,b,c,t;

printf(“Entera,bandc:

”);

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

if(a>b){t=a;a=b;b=t;}

if(a>c){t=a;a=c;c=t;}

if(b>c){t=b;b=c;c=t;}

printf(“%d,%d,%d\n”,a,b,c);

}

2.求n!

,即计算1*2*3*…*n的值。

(5分)

main()

{ints=1,i,n;

printf(“Entern:

”);

scanf(“%d”,&n);

for(i=1;i<=n;i++)s=s*i;

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

}

3.输入10个学生的成绩,求平均成绩,并将低于平均成绩的分数输出。

(10分)

要求:

(1)使用数组存放成绩,数组名为score。

(2)编写三个函数,函数input:

输入学生成绩,

函数average:

求平均成绩,

函数result:

将低于平均成绩的分数输出。

voidinput(floatscore[10],intn)

{inti;

printf(“Enterstudent’sscores:

\n”);

for(i=0;i

scanf(“%f”,&score[i]);

return;

}

floataverage(floatscore[10],intn)

{floatsum=0;

inti;

for(i=0;i

sum=sum+score[i];

return(sum/n);

}

voidresult(floatscore[10],floatave,intn)

{inti;

printf(“Belowtheaverage:

\n”);

for(i=0;i

if(score[i]

return;

}

main()

{floatave,score[10];

input(score,10);

ave=average(score,10);

printf(“average=%6.2f\n”,ave);

print(score,ave,10);

}

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

当前位置:首页 > 教学研究 > 教学案例设计

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

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