C语言题库11.docx

上传人:b****7 文档编号:10304906 上传时间:2023-02-10 格式:DOCX 页数:24 大小:20.32KB
下载 相关 举报
C语言题库11.docx_第1页
第1页 / 共24页
C语言题库11.docx_第2页
第2页 / 共24页
C语言题库11.docx_第3页
第3页 / 共24页
C语言题库11.docx_第4页
第4页 / 共24页
C语言题库11.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

C语言题库11.docx

《C语言题库11.docx》由会员分享,可在线阅读,更多相关《C语言题库11.docx(24页珍藏版)》请在冰豆网上搜索。

C语言题库11.docx

C语言题库11

试卷编号:

9681

所属语言:

C语言

试卷方案:

期中

试卷总分:

100分

共有题型:

5种

 

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

第1题(1.0分)题号:

497

设x的值为15,n的值为2,则表达式x%=(n+=3)运算后x的值是【1】.

答案:

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

0

 

第2题(1.0分)题号:

81

已知i=5,写出语句i-=0x12;执行后整型变量i的值是【1】.

答案:

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

-13

 

第3题(1.0分)题号:

558

表达式i++相当于表达式i=【1】.

答案:

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

i+1

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

1+i

 

第4题(1.0分)题号:

498

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

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

答案:

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

循环

 

第5题(1.0分)题号:

436

下列程序的输出是【1】,

main(){inta=011;printf("%d\n",++a);}

答案:

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

10

 

第6题(1.0分)题号:

293

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

答案:

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

字符

 

第7题(1.0分)题号:

85

已知a=12,写出表达式(0

答案:

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

0

 

第8题(1.0分)题号:

308

当a=3,b=2,c=1;时,执行以下程序段后a=【1】.

 

if(a>b)a=b;

if(b>c)b=c;

elsec=b;

c=a;

答案:

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

2

 

第9题(1.0分)题号:

572

执行下列语句后,b的十进制值是【1】.

 

intx=240,y=15,b;

 

charz='A';

 

b=((x&&y)&&(z<'a'));

答案:

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

1

 

第10题(1.0分)题号:

421

若输入字符串:

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

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

答案:

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

0

 

第11题(1.0分)题号:

438

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

#include"stdio.h"main(){inta;for(a=0;a<10;a++);printf("%d",a);}

答案:

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

10

 

第12题(1.0分)题号:

398

程序段intk=10;while(k=0)k=k-1循环体语句执行【1】次.

答案:

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

0

 

第13题(1.0分)题号:

344

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

答案:

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

strcpy

 

第14题(1.0分)题号:

345

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

答案:

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

strcmp

 

第15题(1.0分)题号:

328

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

答案:

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

0

 

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

第1题(1.0分)题号:

928

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

答案:

Y

第2题(1.0分)题号:

929

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

char

答案:

Y

第3题(1.0分)题号:

935

在C程序中,%是只能用于整数运算的运算符

答案:

Y

第4题(1.0分)题号:

948

用scanf函数向已定义的变量中输入数据时,在变量名前面必须加&.

答案:

Y

第5题(1.0分)题号:

944

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

答案:

Y

第6题(1.0分)题号:

719

C语言本身不提供输入输出语句,输入和输出操作是由函数来

实现的.

答案:

Y

第7题(1.0分)题号:

949

关系运算符的优先级高于算术运算符并且低于赋值运算符.

答案:

N

第8题(1.0分)题号:

959

在switch-case语句中,不是每个case后都要使用break语句.

答案:

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分)题号:

952

do-while循环是先判断循环条件表达式,后执行循环体;while循环是先执行循环体,后判断循环条件表达式.

答案:

N

第12题(1.0分)题号:

742

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

答案:

Y

第13题(1.0分)题号:

710

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

答案:

N

第14题(1.0分)题号:

736

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

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

答案:

Y

第15题(1.0分)题号:

737

charc[]="VeryGood";是一个合法的为字符串数组赋值的语句.

答案:

Y

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

第1题(2.0分)题号:

2017

C语言中,double类型数据占().

A:

1个字节

B:

2个字节

C:

4个字节

D:

8个字节

 

答案:

D

第2题(2.0分)题号:

2029

以下不符合C语言语法的赋值语句是().

A:

a=1,b=2

B:

++j;

C:

a=b=5;

D:

y=(a=3,6*5);

 

答案:

A

第3题(2.0分)题号:

1997

以下标识符中,不能作为合法的C用户定义标识符的是().

A:

a3_b3

B:

void

C:

_123

D:

IF

 

答案:

B

第4题(2.0分)题号:

2189

从键盘上输入某字符串时,不可使用的函数是().

A:

getchar()

B:

gets()

C:

scanf()

D:

fread()

 

答案:

A

第5题(2.0分)题号:

2038

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

doublex;x=218.82631;printf("%-6.2f\n",x);

A:

输出格式描述符的域宽不够,不能输出

B:

输出为21.38e+01

C:

输出为218.83

D:

输出为218.82631

 

答案:

C

第6题(2.0分)题号:

2128

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

floatx=213.82631;

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

A:

213.82

B:

213.83

C:

213

D:

3.8

 

答案:

C

第7题(2.0分)题号:

2262

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

A:

a'<=cl<='z'

B:

(cl>=a)&&(cl<=z)

C:

('a'>=cl)||('z'<=cl)

D:

(cl>='a')&&(cl<='z')

 

答案:

D

第8题(2.0分)题号:

2261

若希望当A的值为奇数时,表达式的值为"真",A的值为偶数时,表达

式的值为"假",则以下不能满足要求的表达式是().

A:

A%2==1

B:

!

(A%2==0)

C:

!

(A%2)

D:

A%2

 

答案:

C

第9题(2.0分)题号:

2027

下列运算符中,不属于关系运算符的是().

A:

<

B:

>

C:

>=

D:

!

 

答案:

D

第10题(2.0分)题号:

2047

a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是().

A:

a*b/a*b==1

B:

a/b*b/a==1

C:

a/b*b+a%b==a

D:

a/b*b==a

 

答案:

C

第11题(2.0分)题号:

2057

经过以下语句定义后,表达式z+=x>y?

++x:

++y的值为().

intx=1,y=2,z=3;

A:

2

B:

3

C:

6

D:

5

 

答案:

C

第12题(2.0分)题号:

2061

在以下给出的表达式中,与do--while(E)语句中的(E)不等价的

表达式是().

A:

(!

E==0)

B:

(E>0||E<0)

C:

(E==0)

D:

(E!

=0)

 

答案:

C

第13题(2.0分)题号:

2247

语句while(!

E);中的表达式!

E等价于().

A:

E==0

B:

E!

=1

C:

E!

=0

D:

E==1

 

答案:

A

第14题(2.0分)题号:

2252

执行语句for(i=1;i++<4;);后变量i的值是().

A:

3

B:

4

C:

5

D:

不定

 

答案:

C

第15题(2.0分)题号:

2249

若i为整型变量,则以下循环执行次数是().

for(i=2;i==0;)printf("%d",i--);

A:

无限次

B:

0次

C:

1次

D:

2次

 

答案:

B

第16题(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

第17题(2.0分)题号:

2073

下列定义数组的语句中不正确的是().

A:

staticinta[2][3]={1,2,3,4,5,6};

B:

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

C:

staticinta[][3]={{1},{4}};

D:

staticinta[][]={{1,2,3},{4,5,6}};

 

答案:

D

第18题(2.0分)题号:

2149

chara[10];不能将字符串"abc"存储在数组中的是().

A:

strcpy(a,"abc");

B:

a[0]=0;strcat(a,"abc");

C:

a="abc";

D:

inti;for(i=0;i<3;i++)a[i]=i+97;a[i]=0;

 

答案:

C

第19题(2.0分)题号:

2271

若二维数组a有m列,则在a[i][j]前的元素个数为().

A:

j*m+i

B:

i*m+j

C:

i*m+j-1

D:

i*m+j+1

 

答案:

B

第20题(2.0分)题号:

2072

下列定义数组的语句中正确的是().

A:

#definesize10charstr1[size],str2[size+2];

B:

charstr[];

C:

intnum['10'];

D:

intn=5;inta[n][n+2];

 

答案:

A

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

第1题(6.0分)题号:

11

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

【程序填空】

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

题目:

以下程序的功能是求100-999之间的水仙花数(水仙花数

是指一个三位数的各位数字的立方和是这个数本身,

如:

153=1^3+5^3+3^3)。

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

intfun(intn)

{inti,j,k,m;

m=n;

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

【?

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

{

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

【?

m=(m-j)/10;

k=k+j*j*j;

}

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

if(k==n)【?

elsereturn(0);}

main()

{

inti;

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

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

if(【?

】==1)printf("%disok!

\n",i);

}

 

答案:

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

k=0;

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

j=m%10;

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

j=m-m/10*10

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

j=m-10*(m/10)

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

return

(1);

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

fun(i)

 

第2题(6.0分)题号:

401

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

【程序填空】

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

题目:

输入某年某月某日,判断这一天是这一年的第几天?

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

main()

{intday,month,year,sum,leap;

printf("\npleaseinputyear,month,day\n");

scanf("%d,%d,%d",&year,&month,&day);

switch(month)

{case1:

sum=0;break;

case2:

sum=31;break;

case3:

sum=59;break;

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

case4:

【?

】;break;

case5:

sum=120;break;

case6:

sum=151;break;

case7:

sum=181;break;

case8:

sum=212;break;

case9:

sum=243;break;

case10:

sum=273;break;

case11:

sum=304;break;

case12:

sum=334;break;

default:

printf("dataerror");break;

}

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

【?

】;

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

if(year%400==0||(【?

】)

leap=1;

else

leap=0;

/***********SPACE***********/s

if(【?

】)

sum++;

printf("Itisthe%dthday.",sum);

}

 

答案:

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

sum=90

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

sum=sum+day

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

sum=sum+day

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

year%4==0&&year%100!

=0)

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

year%4==0&&year%100!

=0

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

leap==1&&month>2

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

leap==1&&month>2

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

leap==1&&2

 

第3题(6.0分)题号:

32

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

【程序填空】

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

题目:

以下程序的功能:

计算并输出500以内最大的10个能被

13或17整除的自然数之和。

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

#include

#include

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

intfun(【?

】)

{

intm=0,mc=0,j,n;

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

while(k>=2&&【?

】)

{

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

if(k%13==0||【?

】)

{m=m+k;mc++;}

k--;

}

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

【?

】;

}

main()

{

clrscr();

printf("%d\n",fun(500));

}

 

答案:

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

intk

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

mc<10

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

10>mc

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

mc<=9

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

9>=mc

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

k%17==0

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

!

(k%17)

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

k/17*17==k

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

returnm

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

return(m)

 

第4题(6.0分)题号:

13

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

【程序填空】

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

题目:

以下程序的功能是产生并输出杨辉三角的前七行。

1

11

121

1331

14641

15101051

1615201561

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

main()

{

inta[7][7];

inti,j,k;

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

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

{a[i][0]=1;【?

】;}

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

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

for(j=1;j<【?

】;j++)

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

a[i][j]=【?

】;

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

{

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

for(j=0;【?

】;j++)

printf("%6d",a[i][j]);

printf("\n");

}

}

 

答案:

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

a[i][i]=1

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

i

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

a[i-1][j]+a[i-1][j-1]

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

a[i-1][j-1]+a[i-1][j]

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

j<=i

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

i>=j

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

j

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

i+1>j

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

j-1

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

i>j-1

 

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

第1题(6.0分)题号:

175

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

【程序设计】

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

题目:

编写函数fun求1!

+2!

+3!

+……+n!

的和,在

main函数中由键盘输入n值,并输出运算

结果。

请编写fun函数。

例如:

若n值为20,则结果为268040729

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

注意:

部分源程序给出如下。

请勿改动主函数main

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

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

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

#include

floatfun(intn)

{

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

 

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

}

main()

{

inti,n;

longintresult;

scanf("%d",&n);

result=fun(n);

printf("%ld\n",result);

getch();

yzj();

}

yzj()

{

FILE*IN,*OUT;

inti;

intiIN;

longintiOUT;

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

if(IN==NULL)

{printf("PleaseVerifyTheCurrerntDir..ItMayBeChanged");

}

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

if(OUT==NULL)

{printf("PleaseVerifyTheCurrentDir..ItMayBeChanged");

}

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

{fscanf(IN,"%d",&iIN);

iOUT=fu

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

当前位置:首页 > 高等教育 > 院校资料

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

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