C语言复习题1Word文件下载.docx

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

C语言复习题1Word文件下载.docx

《C语言复习题1Word文件下载.docx》由会员分享,可在线阅读,更多相关《C语言复习题1Word文件下载.docx(29页珍藏版)》请在冰点文库上搜索。

C语言复习题1Word文件下载.docx

C)intk,*p;

*p=&

D)intk,*p;

p=&

10.任何复杂的程序,都是由________构成的。

A)分支结构、顺序结构、过程结构B)循环结构、分支结构、过程结构

C)顺序结构、循环结构、分支结构D)循环结构、分支结构

11.以下说法中正确的是________。

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

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

C)C程序总是从main函数开始执行的

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

12.在C语言类型说明中,int、char、short等类型的长度是__B______。

A)由用户自己定义的B)与机器字长有关的

C)固定的D)任意的

13.以下字符中,不正确的C语言转义字符分别是________。

A)‘\\’B)‘011’C)‘\’’D)‘\xaa’

14.以下选项中,合法的C语言关键字是________。

A)integerB)CharC)shortD)Long

15.若一个外部变量的定义形式为staticintx;

其中static的作用是___D_____。

A)将变量存放在静态存储区,使x的值可以永久保留

B)使变量x可以由系统自动初始化

C)使x只能在本文件内引用

D)使x的值可以永久保留

16.若a为整型变量,则以下语句________。

a=-2;

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

A)赋值不合法B)输出值为-2C)输出为不确定值D)输出值为2

17.若有说明语句:

inty[][4]={0,0,0,0,0,0};

则正确的叙述是________。

A)数组y的每个元素都可得到初值0

B)二维数组y的行数为1

C)该说明等价于inty[0][4]={0};

D)有元素y[0][0]至y[0][5]可得到初值,其余元素均得不到初值0

18.若shortint类型数据占两个字节,则下列语句的输出为___D_____。

intk=-1;

printf(“%d,%u\n”,k,k);

(%u表示以无符号数输出,考察二进制知识)

A)-1,-1B)-1,32767C)-1,32768D)-1,65535

19.已知:

chara;

intb;

floatc;

doubled;

执行语句c=a+b+c+d;

后,变量c的数据类型是___D_____。

A)intB)charC)doubleD)float

20.假设定义变量如下:

intx;

floaty;

以下输入语句中________是正确的。

A)scanf(“%f%f”,&

y,&

x);

B)scanf(“%f%d”,y,x);

C)scanf(“%f%d”,&

D)scanf(“%5.2f%2d”,&

21.若有以下变量说明和数据的输入方式,则正确的输入语句为________。

变量说明:

floatx1,x2;

数据的输入方式:

4.52<

回车>

3.5<

A)scanf(“%f,%f”,&

x1,&

x2);

B)scanf(“%f%f”,&

C)scanf(“%3.2f,%2.1f”,&

D)scanf(“%3.2f%2.1f”,&

22.若变量已正确定义,与语句if(a>

b)k=0;

elsek=1;

等效的是________。

A)k=(a>

b)?

1:

0?

B)k=a>

b;

C)k=a<

=b;

D)a<

=b?

0:

1;

23.若有定义:

intx,*pb;

则正确的赋值表达式是________。

A)pb=&

xB)pb=xC)*pb=&

xD)*pb=*x

24.已知:

inta,*p=&

a;

则为了得到变量a的值,下列错误的表达式为________。

A)p[0]B)*pC)&

*aD)*&

a

25.在C语言中,引用数组元素时,其数组下标的数据类型允许是________。

A)整型常量B)整型表达式

C)整型常量或整型表达式D)任何类型的表达式

26.若有定义:

intb[5];

则以下对b数组元素的正确引用是________。

A)*&

b[5]B)b+2

C)*(*(b+2))D)*(b+2)

27.设有定义语句“chars[]=”123”;

”,则表达式“s[3]”的值是________。

A)’1’B)’3’C)’\0’D)语法出错

28.语句if(!

i)i++;

中的条件表达式!

i等价于___A_____。

A)i==0B)i!

=1C)i!

=0D)-i

29.设有intx,y;

以下语句判断x和y是否相等,正确的说法是该语句________。

if(x=y)printf("

xisequaltoy."

);

A)语法错B)不能判断x和y是否相等

C)编译出错D)能判断x和y是否相等

30.C语言中规定,if语句的嵌套结构中,else总是与________配对。

A)与最近的if配套B)与第一个if配套

C)按缩进位置相同的if配套D)与最近的且尚未配对的if配套

31.以下有关switch语句的正确说法是________。

A)break语句是语句中必须的一部分

B)在switch语句中可以根据需要使用或不使用break语句

C)break语句在switch语句中不可以使用

D)在switch语句中的每一个case都要用break语句

33.当执行以下程序时,________。

#include<

stdio.h>

voidmain()

{

inta;

while(a=5)

printf("

%d"

a--);

}

A)循环体将执行5次B)循环体将执行0次

C)循环体将执行无限次D)系统会当机。

34.以下函数的类型是________。

intsum(doublex,doubley)

doubles;

s=x+y;

returns;

A)字符型B)不确定C)整型D)实型

35.以下叙述不正确的是___A_____。

A)一个C源程序文件必须包含一个main()函数

B)一个C源程序文件可由一个函数组成

C)一个C源程序文件是一个编译单位

D)一个C源程序文件可由多个函数组成

注意:

若要执行则必须包含一个main()函数

36.若用数组名作为函数调用时的参数,则实际上传递给形参的是________。

A)数组元素的个数B)数组的第一个元素值

C)数组中全部元素的值D)数组首地址

37.一个共用体变量所占内存是________。

A)该共用体第一个成员所占的内存量

B)该共用体最后一个成员所占的内存量

C)该共用体占内存最多成员所占的内存量

D)该共用体所有成员所需内存量的总和

38.C语言中结构体类型变量在程序执行期间________。

A)所有成员一直驻留在内存中B)只有一个成员驻留在内存中

C)部分成员驻留在内存中D)没有成员驻留在内存中

39.简单变量做实参时,实参与其对应的形参之间的数据传递方式是________。

A)双向值传递方式B)地址传递方式

C)单向值传递方式D)用户指定传递方式

40.C语言允许函数值类型的缺省定义,此时该函数值隐含的类型是________。

A)long型B)float型C)double型D)int型

41.以下叙述正确的是________。

A)函数的定义和函数的调用均不可以嵌套

B)函数的定义和函数的调用均可以嵌套

C)函数的定义可以嵌套,但函数的调用均不可以嵌套

D)函数的定义不可以嵌套,但函数的调用均可以嵌套

42.如果在一个函数中的复合语句中定义一个变量,以下正确的叙述是________。

A)该变量在该函数中有效B)该变量只在该复合语句中有效

C)该变量为不合法的变量D)该变量在本程序范围内有效

43.凡是在函数中未指定存储类别的局部变量,其隐含的存储类别是__C___。

A)静态(static)B)外部(extern)

C)自动(auto)D)寄存器(register)

44.若有定义charx[]="

12345"

;

chary[]={'

1'

'

2'

3'

4'

5'

};

则。

A)x数组与y数组的长度相同B)x数组长度大于y的长度

C)x数组长度小于y数组长度D)x数组等价与y数组

45.若在一个C源程序文件中定义了一个允许其他源文件引用的实型外部变量x,则在另一文件中可以使用的引用说明是________。

A)externfloatx;

B)floatx;

C)externautofloatx;

D)externstaticfloatx;

46.以下有关宏替换的叙述不正确的是___A_____。

A)宏名必须用大写字母表示B)宏替换不占用运行时间

C)宏名不具有类型D)宏替换只是字符替换

47.C语言的编译系统对宏命令的处理是___B_____。

A)在程序连接时进行的B)在对源程序中的其它语句编译之前进行的

C)在程序运行时进行的D)和C程序中的其它语句同时进行的

48.若p1、p2都是整型指针,p1已经指向变量x,要使p2也指向x,____是正确的。

A)p2=p1B)p2=**p1C)p2=&

p1D)p2=*p1

49.下列对字符串的定义中,错误的是_____。

A)charstr[5]="

abcde"

B)charstr[]="

C)char*str="

D)charstr[]={'

a'

b'

c'

d'

e'

\0'

50.已知:

inta[8]={0,1,2,3,4,5,6,7},*p=a;

则不能表示数组a中元素的表达式是_____。

A)*pB)a[8]C)*aD)a[p-a]

二.程序阅读题

1.描述以下程序的功能。

intx,y;

printf("

Pleaseinputx,y:

"

scanf("

%d%d"

&

x,&

y);

if(x<

0)x=-x;

if(y<

0)y=-y;

\n%d\n"

x+y);

2.写出以下程序的输出结果。

intnum=0;

while(num++<

=2);

num);

3.写出以下程序的输出结果。

intx=10;

do

x-=9);

while(!

(--x));

4.写出以下程序的输出结果。

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

inty=1,x,*p;

a[1];

for(x=0;

x<

3;

x++)y+=*(p+x);

%d\n"

y);

5.写出以下程序的输出结果。

{inty=5;

for(;

y>

0;

y--)

{if(y%2==0)continue;

%d"

y);

6.若输入为359,写出该程序的输出结果。

voidmain(){

inta,b,c,x,y;

inputthreenumbers:

"

%d%d%d"

a,&

b,&

c);

if(a>

b){

x=a;

y=b;

else{

x=b;

y=a;

if(x<

c)x=c;

elseif(y>

c)y=c;

%d,%d"

x,y);

7.阅读以下程序,写出程序的功能。

inta[10]={2,4,0,-5,10,6,-8,9,6,7};

inti,s=0,count=0;

for(i=0;

i<

10;

i++)

if(a[i]>

0)s+=a[i],count++;

elsecontinue;

printf("

s=%d,count=%d\n"

s,count);

8.阅读以下函数,写出此函数的功能。

floatfun1(floata[],intn)

inti=1;

floatresult=a[0];

n;

if(result>

a[i])result=a[i];

returnresult;

9.阅读以下函数,写出此函数的功能。

voidfun(charA[],intn)

chartmp;

intk;

for(k=0;

k<

n/2;

k++)

{

tmp=A[k];

A[k]=A[n-k-1];

A[n-k-1]=tmp;

10.阅读以下程序,写出程序的运行结果。

#defineN6

inta[N]={4,5,8,3,6,1};

intj,t;

for(j=0;

j<

N-1;

j++)

if(a[j]>

a[j+1])

{

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

N;

%5d"

a[j]);

11.阅读以下程序,写出此程序的功能。

charch;

intc=0,s=0,n=0,other=0;

while((ch=getchar())!

='

\n'

if((ch>

&

ch<

z'

)||(ch>

Z'

))c++;

elseif(ch=='

'

)s++;

elseif(ch>

0'

9'

)n++;

elseother++;

Char:

%d\nSpace:

%d\nNumber:

%d\nOther:

c,s,n,other);

12.阅读以下程序,写出此程序的功能。

#defineN10

intk,i,p,t,a[N+1];

for(i=1;

=N;

scanf("

a[i]);

for(k=1;

p=k;

for(i=k+1;

if(a[p]<

a[i])p=i;

t=a[p];

a[p]=a[k];

a[k]=t;

i++)printf("

a[i]);

\n"

13.下列程序有2个文件组成,写出运行结果。

(可以做修改后的13题)

/*file1*/

#include<

intx=20;

inty=20;

voidfunc_add(void)

y=10+x;

x*=2;

externvoidfunc_sub();

/*声明一个外部函数*/

x+=5;

func_add();

func_sub();

printf("

x=%d;

y=%d\n"

x,y);

/*file2*/

externintx;

/*声明一个外部变量*/

voidfunc_sub()

x-=5;

修改后的13题

14.阅读下面的程序,写出它的运行结果。

longfunc(intm)

longs;

if(m==1)

s=1;

elses=m+func(m-1);

return(s);

{

longy;

y=func(4);

%2d"

15.写出以下函数的功能。

voidfun(charstr1[],charstr2[])

{inti=0;

while((str1[i]=str2[i])!

i++;

16.阅读以下程序,写出此程序的结果。

voidincrement()

intx=0;

x+=1;

x);

increment();

17.写出以下程序的运行结果。

(不做)

staticintx=0;

18.阅读以下程序,写出此程序的结果。

intadd(inta,intb)

intc;

c=a+b;

returnc;

voidprint(intt)

z=%d\n"

t);

intx,y,z;

voidprint(intt);

x=5,y=10;

z=add(x,y);

print(z);

19.阅读以下程序,写出程序运行的结果。

intf(intx,inty);

inta=1,b=2,c;

c=f(a,b);

c);

intf(intx,inty)

intz;

z=(x>

y)?

x:

y;

return(z);

20.若输入一个整数10,写出以下程序的运行结果。

intsub(inta);

inta,e[10],c,i=0;

a);

while(a!

=0)

c=sub(a);

a=a/2;

e[i]=c;

i++;

for(;

i>

i--)printf("

e[i-1]);

intsub(inta)

c=a%2;

return(c);

21.写出以下程序的运行结果。

sub(intn)

if(n==1)return

(1);

a=n+sub(n-1);

return(a);

inti=5;

sub(i));

22.写出下面程序的运行结果。

func(inta[][3])

inti,j,sum=0;

for(i=0;

i<

i++)

for(j=0;

j<

j++)

if(i==j)sum=sum+a[i][j];

return(sum);

inta[3][3]={1,3,5,7,9,11,13,15,17},sum;

sum=func(a);

sum=%d\n"

sum);

23.写出下面程序的运行结果。

voidsort(inta[])

inti,j,t;

4;

for(j=

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

当前位置:首页 > 农林牧渔 > 林学

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

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