C语言程序设计复习题Word格式文档下载.docx

上传人:b****6 文档编号:18871603 上传时间:2023-01-01 格式:DOCX 页数:19 大小:25.23KB
下载 相关 举报
C语言程序设计复习题Word格式文档下载.docx_第1页
第1页 / 共19页
C语言程序设计复习题Word格式文档下载.docx_第2页
第2页 / 共19页
C语言程序设计复习题Word格式文档下载.docx_第3页
第3页 / 共19页
C语言程序设计复习题Word格式文档下载.docx_第4页
第4页 / 共19页
C语言程序设计复习题Word格式文档下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

C语言程序设计复习题Word格式文档下载.docx

《C语言程序设计复习题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言程序设计复习题Word格式文档下载.docx(19页珍藏版)》请在冰豆网上搜索。

C语言程序设计复习题Word格式文档下载.docx

if((j++||k++)&

&

i++)

%d,%d,%d\n"

i,j,k);

执行后输出结果是(C)

A)1,1,2B)2,2,1C)2,2,2D)2,2,3

10.有如下程序

intmain()

{intn=9;

while(n>

6){n--;

printf("

%d"

n);

}return0;

该程序的输出结果是(B)

A)987B)876C)8765D)9876

11.在下列选项中,没有构成死循环的是(D)

A)inti=100;

while

(1)

{i=i_0+1;

if(i>

100)break;

}

B)for(;

;

);

C)intk=10000;

do{k++;

}while(k>

10000);

D)ints=36;

while(s)--s;

12.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是(D)

A)函数调用可以作为独立的语句存在B)函数调用可以作为一个函数的实参

C)函数调用可以出现在表达式中D)函数调用可以作为一个函数的形参

13.有以下程序

floatfun(intx,inty)

{return(x+y);

{inta=2,b=5,c=8;

%3.0f\n"

fun((int)fun(a+c,b),a-c));

程序运行后的输出结果是(B)

A)编译出错B)9

C)21D)9.0

14.若运行时给变量x输入12,则以下程序的运行结果是(C)

{intx,y;

scanf("

&

x);

y=x>

12?

x+10:

x-12;

%d\n"

y);

A)0B)22C)12D)10

15.以下说法正确的是(A)

A)C语言程序总是从第一个的函数开始执行

B)在C语言程序中,要调用函数必须在main()函数中定义

C)C语言程序总是从main()函数开始执行

D)C语言程序中的main()函数必须放在程序的开始部分

16.有以下程序

#defineF(X,Y)(X)*(Y)

{inta=3,b=4;

F(a++,b++));

}

程序运行后的输出结果是(C)

A)12B)15C)16D)20

17.以下程序中函数sort的功能是对a数组中的数据进行由大到小的排序

voidsort(inta[],intn)

{inti,j,t;

for(i=0;

ifor(j=i+1;

jif(a[i]}

{intaa[10]={1,2,3,4,5,6,7,8,9,10},i;

sort(&

aa[3],5);

i<

10;

i++)printf("

%d,"

aa[i]);

\n"

程序运行后的输出结果是(C)

A)1,2,3,4,5,6,7,8,9,10,B)10,9,8,7,6,5,4,3,2,1,

C)1,2,3,8,7,6,5,4,9,10,D)1,2,10,9,8,7,6,5,4,3,

18.以下关于结构化程序设计的叙述中正确的是是(C)

A)一个结构化程序必须同时由顺序、分支、循环三种结构组成

B)结构化程序使用goto语句会很便捷

C)在C语言中,程序的模块化是利用函数实现的

D)由三种基本结构构成的程序只能解决小规模的问题

19.有以下定义:

int 

a;

long 

b;

double 

x,y;

则以下选项中正确的表达式是(B)

A)a%(int)(x-y)B)a=x!

=y;

C)(a*y)%bD)y=x+y=x

20.以下选项中能表示合法常量的是(D)

A)整数:

1,200B)实数:

1.5E2.0

C)字符斜杠:

‘\’D)字符串:

"

\007"

21.表达式a+=a-=a=9的值是(D)

A)9B)-9C)18D)0

22.若变量已正确定义,在if(W)printf("

%d\n"

k);

中,以下不可替代W的是(A)

A)a<>b+cB)ch=getchar()C)a==b+cD)a++

23.有以下程序

#include<

stdio.h>

{int 

a=1,b=0;

if(!

a)b++;

else 

if(a==0)if(a)b+=2;

b+=3;

printf(”%d\n”,b);

return0;

程序运行后的输出结果是()

A)0B)1C)2  D)3

24.有以下程序

#include<

intmain(){inta=1,b=2;

while(a<

6){b+=a;

a+=2;

b%=10;

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

A)5,11B)7,1C)7,11D)6,1

25.有以下程序

#include<stdio.h>

main(){inty=10;

while(y--);

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

程序执行后的输出结果是()

A)y=0B)y=-1C)y=1D)while构成无限循环

26.有以下程序

  #include<stdio.h>

  #include<string.h>

  main()

  {charx[]=”STRING”;

  x[0」=0;

x[1]=’\0’;

x[2」=’0’;

  printf(”%d 

%d\n”,sizeof(x),strlen(x));

  }

  程序运行后的输出结果是()

  A)6 

1

  B)7 

0

  C)6 

3

  D)7 

27.有以下程序

  #include<stdio.h>

  {chars[]=”rstuv"

  printf(”%c\n”,*s+2);

  A)tuv

  B)字符t的ASCII码值

  C)t

  D)出错

28.有以下程序

  #include<stdio.h>

  Int 

f(int 

x);

  {int 

n=1,m;

  m=f(f(f(n)));

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

  int 

x)

  {return 

x*2;

  A)1

  B)2

  C)4

  D)8

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

  A)int 

N=10;

B)#defineN10

x[N];

intx[N];

  C)int 

x[0..10];

D)intx[];

30.若要定义一个具有5个元素的整型数组,以下错误的定义语句是()

a[5]=﹛0﹜;

  B)int 

b[]={0,0,0,0,0};

c[2+3];

  D)int 

i=5,d[i];

31.下列选项中,能够满足“若字符串s1等于字符串s2,则执行ST"

要求的是()

  A)if(strcmp(s2,s1)==0)ST;

  B)if(sl==s2)ST;

  C)if(strcpy(sl,s2)==1)ST;

  D)if(sl-s2==0)ST;

32.有以下程序

  {ints,t,A=10;

doubleB=6;

  s=sizeof(A);

t=sizeof(B);

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

  在VC6平台上编译运行,程序运行后的输出结果是()

  A)2,4 

B)4,4 

C)4,8 

D)10,6

33以下叙述正确的是(B)

A)C语言程序是由过程和函数组成的

B)C语言函数可以嵌套调用,例如fun(fun(x))

C)C语言函数不可以单独编译

D)C语言中除了mian函数,其他函数不可作为单独文件形式存在

34以下关于C语言的叙述中正确的是(A)

A)C语言中的注释不可以夹在变量名或关键字的中间

B)C语言中的变量可以在使用之前的任何位置进行定义

C)在C语言算术的表达式的书写中,运算符两侧的运算数类型必须一致

D)C语言的数值常量中夹带空格不影响常量值的正确表示

35以下C语言用户标识符中,不合法的是(D)

A)1B)AaBcC)abD)a-b

36若有定义:

doublea=22;

inti=0k=18;

,则不符合C语言规定的赋值语句是(C)

A)a=a++,i++B)i=(a+k)<=(i+k);

C)i=a%11D)i=!

a;

37有以下程序

#includ<

main{}

{chara,b,c,d;

scanf(〞%c%c〞,﹠a,﹠b);

c=getchar();

d=getchar();

printf(〞%c%c%c%c﹨n〞,a,b,c,d);

当执行程序时,按下列方式输入数据(从第1列开始,<

CR>

代表回车,注意:

回车也是一个字符)

12<

34<

则输出结果是(C)

A)1234B)12C)12D)12

334

38以下关于C语言数据类型使用的叙述中错误的是(D)

A)若要准确无误差的表示自然数,应使用整数类型

B)若要保存带有多位小数的数据,应使用双精度类型

C)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型

D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型

39若a是数值类型,则逻辑表达式(a==1)||(a!

=1)的值是(A)

A)1B)0C)2D)不知道a的值,不能确定

40以下选项中与if(a=1)a=b;

elsea++;

语句功能不同的switch语句是(B)

A)switch(a)B)switch(a==1)

{case1:

a=b;

break;

{case0:

default:

a++;

case1:

a++;

}}

C)switch(a)D)switch(a==1)

{default:

a++;

case0:

41有如下嵌套的if语句(C)

if(a<

b)

c)k=a;

elsek=c;

else

if(b<

c)k=b;

以下选项中与上述if语句等价的语句是

A)k=(a<

b)?

a:

b;

k=(b<

c)?

b:

c;

B)k=(a<

((b<

a:

b):

((b<

b:

c);

C)k=(a<

((a<

c):

D)k=(a<

k=(a<

42有以下程序

#include<

stdio.h>

main()

{inti,j,m=1;

for(i=1;

3;

i++)

{for(j=3;

j>

0;

j﹣﹣)

{if(i*j>

3)break;

m*=i*j;

printf(〞m=﹪d﹨n〞,m);

程序运行后的输出结果是(A)

A)m=6B)m=2C)m=4D)m=5

43有以下程序

{inta=1,b=2;

for(;

a<

8;

a++){b+=a;

a+=2;

printf(〞﹪d,﹪d﹨n〞,a,b);

程序运行后的输出结果是(D)

A)9,18B)8,11C)7,11D)10,14

44有以下程序,其中K的初值为八进位数

#include<

stido.h>

main()

{intk=011;

printf(〞﹪d﹨n〞,k++);

A)12B)11C)10D)9

45以下关于return语句的叙述中正确的是(B)

A)一个自定义函数中必须有一条return语句

B)一个自定义函数中可以根据不同情况设置多条return语句

C)定义成void类型的函数中可以有带返回值的return语句

D)没有return语句的自定义函数在执行结束时不能返回到调用处

46下列选项中,能正确定义数组的语句是(D)

A)intnum[0..2008];

B)intnum[];

C)intN=2008;

D)#defineN2008

Intnum[N];

intnum[N];

47有以下程序

{inta[5]={1,2,3,4,5},b[5]={0,2,1,3,0},i,s=0;

for(i=0;

5;

i++)s=s+a[b[i]];

printf(〝%d\n〞,s);

A)6B)10C)11D)15

48有以下程序

{intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;

3;

i++)

for(j=I;

j<

I;

j++)t+=b[i][b[j][i]];

printf(〝%d\n〞,t);

A)1B)3C)4D)9

49有以下程序

Intf(intt[],intn);

{inta[4]={1,2,3,4},s;

s=f(a,4);

intf(intt[],intn)

{if(n>

0)returnt[n-1]+f(t,n-1);

elsereturn0;

程序运行后的输出结果是(B)

A)4B)10C)14D)6

50有以下程序

Intfun()

{staticintx=1;

x*=2;

returnx;

{inti,s=1;

for(i=1;

=2;

i++)s=fun();

printf(〝%d\n〞,s);

A)0B)1C)4D)8

51有以下程序

#defineSUB(a)(a)-(a)

{inta=2,b=3,c=5,d;

d=SUB(a+b)*c;

printf(〝%d\n〞,d);

A)0B)-12C)-20D)10

52设有定义:

structcomplex

{intreal,unreal;

}datal={1,8},data2;

则以下赋值语句错误的是(B)

A)data2=data1;

B)data2=(2,6);

C)data2.real=dat1.real;

D)data2.real=datal.unreal;

53.C语言程序的基本单位是____

A)程序行B)语句C)函数D)字符C、1

54.C语言程序的三种基本结构是____

A、顺序结构,选择结构,循环结构

B、递归结构,循环结构,转移结构

C、嵌套结构,递归结构,顺序结构

D、循环结构,转移结构,顺序结构A、1

55.C语言规定,程序中各函数之间

A)既允许直接递归调用也允许间接递归调用

B)不允许直接递归调用也不允许间接递归调用

C)允许直接递归调用不允许间接递归调用

D)不允许直接递归调用允许间接递归调用A、1

56.C语言中可处理的文件类型是()

A)文本文件和数据文件

B)文本文件和二进制文件

C)数据文件和二进制文件

D)数据代码文件、B、1

57.C语言可执行程序的开始执行点是()

A)程序中第一条可执行语句

B)程序中第一个函数

C)程序中的main函数

D)包含文件中的第一个函数、C、1

58.C语言提供的合法的数据类型关键字是

A)doubleB)shortC)integerD)char、B、1

59.C语言中,运算对象必须是整型数的运算符是

A)%B)\C)%和\D)**、A、1

60.C语言中函数返回值的类型是由()决定。

A)return语句中的表达式类型

B)调用函数的主调函数类型

C)调用函数时临时

D)定义函数时所指定的函数类型、D、1

61C语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为_____。

A、该数组的长度。

B、该数组的元素个数。

C、该数组中各元素的值。

D、该数组的首地址。

、D、1

62.C语言中数组下标的下限是________。

A、1B、0C、视具体情况D、无固定下限、B、1

63.C语言中提供的合法关键字是____

A、swithB、cherC、caseD、default、D、1

64.sizeof(float)是()

A)一种函数调用B)一个不合法的表示形式C)一个整型表达式D)一个浮点表达式、C、1

65.x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是

A)inputx,y,z;

B)scanf("

%d%d%d"

x,&

y,&

z);

C)scanf("

x,y,z);

D)read("

、B、1

66.表达式:

10!

=9的值是

A)trueB)非零值C)0D)1、D、1

67.表示关系x<

=y<

=z的c语言表达式为

A)(X<

=Y)&

(Y<

=Z)B)(X<

=Y)AND(Y<

=Z)C)(X<

=Y<

=Z)D)(X<

=Z)、A、1

68.程序片段:

在TC20中,inti=65536;

printf("

i);

的输出结果是____

A)65536B)0C)有语法错误,无输出结果D)-1、B、1

69.当调用函数时,实参是一个数组名,则向函数传送的是____

A)数组的长度B)数组的首地址C)数组每一个元素的地址D)数组每个元素中的值、B、1

70.对嵌套子程序调用说法正确的是____。

A、外层子程序可以调用所有的内层子程序

B、内层了程序只可以调用包含本身的外层子程序,不可以隔层调用

C、外分程序必须能完全套住内分程序

D、以上说法均不正确、C、1

71.请选出合法的C语言赋值语句

A)a=b=58B)i++;

C)a=58,b=58D)k=int(a+b);

72.若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是

A)-3B)9C)-12D)6、C、1

二、填空题

1.算法的基本特征是【有穷性】、【确定性】、【有零个或多个输入】、【有一个或多个输出】和【有效性】。

2.下列程序的输出结果是【Hello】。

main(){charb[]="

Helloyou"

b[5]='

\0'

printf("

%s\n"

b);

3.以下程序的输出结果是【16】。

main(){

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

当前位置:首页 > 表格模板 > 书信模板

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

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