上海海事大学c语言试题3.docx

上传人:b****1 文档编号:13858754 上传时间:2023-06-18 格式:DOCX 页数:25 大小:20.57KB
下载 相关 举报
上海海事大学c语言试题3.docx_第1页
第1页 / 共25页
上海海事大学c语言试题3.docx_第2页
第2页 / 共25页
上海海事大学c语言试题3.docx_第3页
第3页 / 共25页
上海海事大学c语言试题3.docx_第4页
第4页 / 共25页
上海海事大学c语言试题3.docx_第5页
第5页 / 共25页
上海海事大学c语言试题3.docx_第6页
第6页 / 共25页
上海海事大学c语言试题3.docx_第7页
第7页 / 共25页
上海海事大学c语言试题3.docx_第8页
第8页 / 共25页
上海海事大学c语言试题3.docx_第9页
第9页 / 共25页
上海海事大学c语言试题3.docx_第10页
第10页 / 共25页
上海海事大学c语言试题3.docx_第11页
第11页 / 共25页
上海海事大学c语言试题3.docx_第12页
第12页 / 共25页
上海海事大学c语言试题3.docx_第13页
第13页 / 共25页
上海海事大学c语言试题3.docx_第14页
第14页 / 共25页
上海海事大学c语言试题3.docx_第15页
第15页 / 共25页
上海海事大学c语言试题3.docx_第16页
第16页 / 共25页
上海海事大学c语言试题3.docx_第17页
第17页 / 共25页
上海海事大学c语言试题3.docx_第18页
第18页 / 共25页
上海海事大学c语言试题3.docx_第19页
第19页 / 共25页
上海海事大学c语言试题3.docx_第20页
第20页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

上海海事大学c语言试题3.docx

《上海海事大学c语言试题3.docx》由会员分享,可在线阅读,更多相关《上海海事大学c语言试题3.docx(25页珍藏版)》请在冰点文库上搜索。

上海海事大学c语言试题3.docx

上海海事大学c语言试题3

试卷编号:

9689

所属语言:

C语言

试卷方案:

期中考试

试卷总分:

100分

共有题型:

5种

 

一、填空共15题(共计15分)

第1题(1.0分)题号:

92

C语言中的字符变量用保留字【1】来说明.

答案:

=======(答案1)=======

char

 

第2题(1.0分)题号:

433

已知x=3,y=2,则表达式x*=y+8的值为【1】.

答案:

=======(答案1)=======

30

 

第3题(1.0分)题号:

388

设x和y均为int型变量,且x=1,y=2,则表达式1.0+x/y的值为【1】.

答案:

=======(答案1)=======

1.0

=========或=========

1

 

第4题(1.0分)题号:

293

getchar()函数只能接收一个【1】.

答案:

=======(答案1)=======

字符

 

第5题(1.0分)题号:

437

以下程序的输出结果为【1】,

#include"stdio.h"main(){inta=010,j=10;printf("%d,%d\n",++a,j--);}

答案:

=======(答案1)=======

9,10

 

第6题(1.0分)题号:

498

c语言程序的三种基本结构是:

顺序结构,选择结构,【1】结构.

答案:

=======(答案1)=======

循环

 

第7题(1.0分)题号:

100

已知a=13,b=6,a||b的十进制数值为【1】.

答案:

=======(答案1)=======

1

 

第8题(1.0分)题号:

441

设a=3,b=4,c=4,则表达式a+b>c&&b==c&&a||b+c&&b==c的值为【1】.

答案:

=======(答案1)=======

1

 

第9题(1.0分)题号:

457

设a,b,c,t为整型变量,初值为a=3,b=4,c=5,执行完语句t=!

(a+b)+c-1&&b+c/2

后,t的值是【1】.

答案:

=======(答案1)=======

1

 

第10题(1.0分)题号:

389

设i,j,k均为int型变量,则执行完for循环

 

for(i=0,j=10;i<=j;i++,j--)k=i+j;

 

后,k的值为【1】.

答案:

=======(答案1)=======

10

 

第11题(1.0分)题号:

421

若输入字符串:

abcde<回车>,则以下while循环体将执行【1】次.

While((ch=getchar())=='e')printf("*");

答案:

=======(答案1)=======

0

 

第12题(1.0分)题号:

533

设x和y均为int型变量,则以下for循环中的scanf语句最多可执行的次数是【1】.

for(x=0,y=0;y!

=123&&x<3;x++)

scanf("%d",&y);

答案:

=======(答案1)=======

3

 

第13题(1.0分)题号:

328

C语言中,数组元素的下标下限为【1】.

答案:

=======(答案1)=======

0

 

第14题(1.0分)题号:

346

合并字符串的库函数是【1】,只写函数名即可.

答案:

=======(答案1)=======

strcat

 

第15题(1.0分)题号:

341

定义inta[2][3];表示数组a中的元素个数是【1】个.

答案:

=======(答案1)=======

6

 

二、判断共15题(共计15分)

第1题(1.0分)题号:

715

整数-32100可以赋值给int型和longint型变量.

答案:

Y

第2题(1.0分)题号:

929

在C语言中,5种基本数据类型的存储空间长度的排列顺序为:

char

答案:

Y

第3题(1.0分)题号:

928

C程序中的关键字必须小写.

答案:

Y

第4题(1.0分)题号:

194

若有定义和语句:

inta;charc;floatf;scanf("%d,%c,%f",&a,&c,&f);

若通过键盘输入:

10,A,12.5,则a=10,c='A',f=12.5.

答案:

Y

第5题(1.0分)题号:

944

C语言中,赋值表达式加上分号就构成了赋值语句.

答案:

Y

第6题(1.0分)题号:

716

若i=3,则printf("%d",-i++);输出的值为-4.

答案:

N

第7题(1.0分)题号:

950

逻辑运算符中的"&&"和"||"低于关系运算符,"!

"高于算术运算符.

答案:

Y

第8题(1.0分)题号:

951

在执行switch语句时,default和各个case的出现次序不影响执行结果.

答案:

Y

第9题(1.0分)题号:

869

若有inti=10,j=0;则执行完语句

if(j=0)i++;elsei--;i的值为11.

答案:

N

第10题(1.0分)题号:

953

C语言中的for语句可以用于循环次数已经确定的情况,但是不能用于循环次数不确定而只给出循环结束条件的情况.

答案:

N

第11题(1.0分)题号:

742

若有说明intc;则while(c=getchar());是正确的C语句.

答案:

Y

第12题(1.0分)题号:

954

continue语句只结束本次循环,而不是终止整个循环的执行.break语句则是结束整个循环过程,不再判断执行循环的条件是否成立.

答案:

Y

第13题(1.0分)题号:

736

inta[3][4]={{1},{5},{9}};它的作用是将数组各行第一列

的元素赋初值,其余元素值为0.

答案:

Y

第14题(1.0分)题号:

735

如果想使一个数组中全部元素的值为0,可以写成

inta[10]={0*10};

答案:

N

第15题(1.0分)题号:

926

任何数组的下标都是从0开始;

答案:

Y

三、单项选择共20题(共计40分)

第1题(2.0分)题号:

2004

下列字符序列中,不可用作C语言标识符的是().

A:

b70

B:

#ab

C:

symbol

D:

a_1

 

答案:

B

第2题(2.0分)题号:

2137

下列表达式中,可作为C合法表达式的是().

A:

[3,2,1,0]

B:

(3,2,1,0)

C:

3=2=1=0

D:

3/2/1/0

 

答案:

B

第3题(2.0分)题号:

2037

若k,g均为int型变量,则下列语句的输出为().

k=017;g=111;printf("%d\t",++k);printf("%x\n",g++);

A:

156f

B:

1670

C:

1571

D:

166f

 

答案:

D

第4题(2.0分)题号:

2043

已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为().

chara='a';a--;

printf("%d,%c\n",a+'2'-'0',a+'3'-'0');

A:

b,c

B:

a--运算不合法,故有语法错

C:

98,c

D:

格式描述和输出项不匹配,输出无定值

 

答案:

C

第5题(2.0分)题号:

2128

下列程序段的输出结果为().

floatx=213.82631;

printf("%3d",(int)x);

A:

213.82

B:

213.83

C:

213

D:

3.8

 

答案:

C

第6题(2.0分)题号:

2222

语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是

(说明:

'\b'是退格符)().

A:

a\bre\'hi\'y\\\bou

B:

a\bre\'hi\'y\bou

C:

re'hi'you

D:

abre'hi'y\bou

 

答案:

C

第7题(2.0分)题号:

2028

假设所有变量均为整型,表达式:

a=2,b=5,a>b?

a++:

b++,a+b的值

是().

A:

7

B:

8

C:

9

D:

2

 

答案:

B

第8题(2.0分)题号:

2145

inta=3,b=2,c=1;

if(a>b>c)a=b;

elsea=c;

则a的值为().

A:

3

B:

2

C:

1

D:

0

 

答案:

C

第9题(2.0分)题号:

2062

假定所有变量均已正确定义,下列程序段运行后x的值是().

k1=1;

k2=2;

k3=3;

x=15;

if(!

k1)x--;

elseif(k2)x=4;

elsex=3;

A:

14

B:

4

C:

15

D:

3

 

答案:

B

第10题(2.0分)题号:

2136

下列程序段的输出结果为().

inta=7,b=9,t;

t=a*=a>b?

a:

b;

printf("%d",t);

A:

7

B:

9

C:

63

D:

49

 

答案:

C

第11题(2.0分)题号:

2319

在C语言中,要求运算数必须是整型的运算符是().

A:

^

B:

%

C:

!

D:

>

 

答案:

B

第12题(2.0分)题号:

2251

以下不是无限循环的语句为().

A:

for(y=0,x=1;x>++y;x=i++)i=x;

B:

for(;;x++=i);

C:

while

(1){x++;}

D:

for(i=10;;i--)sum+=i;

 

答案:

A

第13题(2.0分)题号:

2123

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

for(j=0,k=0;j<=9&&k!

=876;j++)scanf("%d",&k);

A:

最多执行10次

B:

最多执行9次

C:

是无限循环

D:

循环体一次也不执行

 

答案:

A

第14题(2.0分)题号:

2141

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

for(i=4;i>1;i--)

for(j=1;j

putchar('#');

A:

B:

######

C:

#

D:

###

 

答案:

B

第15题(2.0分)题号:

2059

以下程序的运行结果是().

main()

{intn;

for(n=1;n<=10;n++)

{

if(n%3==0)continue;

printf("%d",n);

}

}

A:

12457810

B:

369

C:

12

D:

1234567890

 

答案:

A

第16题(2.0分)题号:

2147

while(fabs(t)<1e-5)if(!

(s/10))break;循环结束的条件是().

A:

t>=1e-5||t<=-1e-5||s>-10&&s<10

B:

fabs(t)<1e-5&&!

s/10

C:

fabs(t)<1e-5

D:

s/10==0

 

答案:

A

第17题(2.0分)题号:

2273

设有数组定义:

chararray[]="China";则数组array所占的

空间为().

A:

4个字节

B:

5个字节

C:

6个字节

D:

7个字节

 

答案:

C

第18题(2.0分)题号:

2280

若有说明inta[3][4];则对a数组元素的正确引用是().

A:

a[2][4]

B:

a[1,3]

C:

a[1+1][0]

D:

a

(2)

(1)

 

答案:

C

第19题(2.0分)题号:

2269

以下不正确的定义语句是().

A:

doublex[5]={2.0,4.0,6.0,8.0,10.0};

B:

inty[5]={0,1,3,5,7,9};

C:

charc1[]={'1','2','3','4','5'};

D:

charc2[]={'\x10','\xa','\x8'};

 

答案:

B

第20题(2.0分)题号:

2074

下列语句中,不正确的是().

A:

staticchara[2]={1,2};

B:

staticinta[2]={'1','2'};

C:

staticchara[2]={'1','2','3'};

D:

staticchara[2]={'1'};

 

答案:

C

四、程序填空共4题(共计24分)

第1题(6.0分)题号:

24

/*-------------------------------------------------------

【程序填空】

---------------------------------------------------------

题目:

以下程序的功能是对任一整数N(N≠0),它都可以分解成1

(或-1)和一些质数(素数)因子的形式。

如N=150时,可分

解成1×2×3×5×5;N=-150时,可分解为-1×2×3×5×5。

下边程序能实现这种分解过程。

当N=150,输出以下分解结

果:

N=1*2*3*5*5

-------------------------------------------------------*/

main()

{

intn,i,j,r;

scanf("%d",&n);

if(n==0)

{

printf("dataerror\n");

exit(0);

}

/***********SPACE***********/

elseif(【?

】)

printf("n=1");

else

{

printf("n=-1");

n=-n;

}

/***********SPACE***********/

for(【?

】;i<=n;i++)

{

/***********SPACE***********/

【?

】;

while(r==0)

{

printf("*%d",i);

/***********SPACE***********/

【?

】;

r=n%i;

}

}

printf("\n");

}

 

答案:

=======(答案1)=======

n>0

=========或=========

0

=======(答案2)=======

i=2

=======(答案3)=======

r=n%i

=======(答案4)=======

n=n/i

=========或=========

n/=i

 

第2题(6.0分)题号:

14

/*-------------------------------------------------------

【程序填空】

---------------------------------------------------------

题目:

输出100到1000之间的各位数字之和能被15整除的所有数,

输出时每10个一行。

-------------------------------------------------------*/

main()

{

intm,n,k,i=0;

for(m=100;m<=1000;m++)

{

/***********SPACE***********/

【?

】;

n=m;

do

{

/***********SPACE***********/

k=k+【?

】;

n=n/10;

/***********SPACE***********/

}【?

】;

if(k%15==0)

{

printf("%5d",m);i++;

/***********SPACE***********/

if(i%10==0)【?

】;

}

}

}

答案:

=======(答案1)=======

k=0

=======(答案2)=======

n%10

=========或=========

n-n/10*10

=========或=========

n-10*(n/10)

=======(答案3)=======

while(n>0)

=========或=========

while(0

=========或=========

while(n!

=0)

=========或=========

while(0!

=n)

=======(答案4)=======

printf("\n")

 

第3题(6.0分)题号:

21

/*-------------------------------------------------------

【程序填空】

---------------------------------------------------------

题目:

以下程序的功能是将一个字符串中的前N个字符复制到

一个字符数组中去,不许使用strcpy函数。

-------------------------------------------------------*/

main()

{

charstr1[80],str2[80];

inti,n;

/***********SPACE***********/

gets(【?

】);

scanf("%d",&n);

/***********SPACE***********/

for(i=0;【?

】;i++)

/***********SPACE***********/

{【?

】;}

/***********SPACE***********/

【?

】;

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

}

 

答案:

=======(答案1)=======

str1

=======(答案2)=======

i

=========或=========

n>i

=========或=========

i<=n-1

=========或=========

n-1>=i

=======(答案3)=======

str2[i]=str1[i]

=========或=========

*(str2+i)=*(str1+i)

=========或=========

*(str2+i)=str1[i]

=========或=========

str2[i]=*(str1+i)

=======(答案4)=======

str2[n]='\0'

=========或=========

str2[i]='\0'

=========或=========

str2[n]=0

=========或=========

str2[i]=0

=========或=========

*(str2+n)='\0'

=========或=========

*(str2+i)='\0'

=========或=========

*(str+n)=0

=========或=========

*(str2+i)=0

 

第4题(6.0分)题号:

23

/*-------------------------------------------------------

【程序填空】

---------------------------------------------------------

题目:

以下程序的功能是求一个二维数组中每行的最大值和每行

的和。

-------------------------------------------------------*/

#include"stdlib.h"

main()

{

inta[5][5],b[5],c[5],i,j,k,s=0;

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

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

a[i][j]=random(40)+20;

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

{

/***********SPACE***********/

k=a[i][0];【?

】;

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

{

/***********SPACE***********/

if(k

】;

s=s+a[i][j];

}

b[i]=k;

/***********SPACE***********/

【?

】;

}

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

{

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

/***********SPACE***********/

printf("%5d",【?

】);

printf("%5d%5d",b[i],c[i]);

printf("\n");

}

}

 

答案:

=======(答案1)=======

s=0

=======(答案2)=======

k=a[i][j]

=======(答案3)=======

c[i]=s

=======(答案4)=======

a[i][j]

 

五、程序设计共1题(共计6分)

第1题(6.0分)题号:

391

/*------------------------------------------------

【程序设计】

--------------------------------------------------

题目:

编写函数求1~100中奇数的平方和。

结果为166650。

--------------------------------------------------

注意:

部分源程序给出如下。

请勿改动主函数

main和其它函数中的任何内容,仅在函

数的花括号中填入所编写的若干语句。

------------------------------------------------*/

#include"stdio.h"

floatsum(intn)

{

/**********Program**********/

 

/**********End**********/

}

main()

{

printf("sum=%f\n",sum(100));

yzj();

getch();

}

yzj()

{

FILE*IN,*OUT;

intn;

inti;

floato;

IN=fopen("in.dat","r");

if(IN==NULL)

{printf("ReadFileError");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{printf("WriteFileError");

}

fscanf(IN,"%d",&i);

o=sum(i);

fprintf(OUT,"%f\n",o);

fclose(IN);

fclose(OUT

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

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2