期末考试C语言复习题含答案沈阳工程学院Word文件下载.docx

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

期末考试C语言复习题含答案沈阳工程学院Word文件下载.docx

《期末考试C语言复习题含答案沈阳工程学院Word文件下载.docx》由会员分享,可在线阅读,更多相关《期末考试C语言复习题含答案沈阳工程学院Word文件下载.docx(30页珍藏版)》请在冰点文库上搜索。

期末考试C语言复习题含答案沈阳工程学院Word文件下载.docx

A.函数返回值类型不确定B.函数返回值是float型

C.函数返回值是int型D.函数返回值是void型

14、对于int*pa[5];

的描述,d是正确的。

A、pa是一个指向数组的指针,所指向的数组是5个int型元素

B、pa是一个指向某数组中第5个元素的指针,该指针是int型变量

C、pa[5]表示某个数组的第5个元素的值

D、pa是一个具有5个元素的指针数组,每一个元素是一个int型指针

15、对for(表达式1;

;

表达式3)可理解为___b_____。

A、for(表达式1;

0;

表达式3;

B、for(表达式1;

C、for(表达式1;

表达式1;

D、for(表达式1;

16、若有说明:

inta[4][4]={0}

则下面不正确的是__A______。

A、数组a的每个元素都可得到初值0

B、二维数组a的第一维大小为1

C、因为二维数组a中第二维大小的值除以初值个数的商为1,故数组a的行数为1

D、只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0

17、若有说明:

intn=2,*p=&

n,*q=p;

,则以下非法的赋值语句是d。

A、p=q;

B、*p=*q;

C、n=*q;

D、p=n;

18、若有以下说明和定义

typedefint*INTEGER;

INTEGERp,*q;

以下叙述正确的是D。

A、P是int型变量B、程序中可用INTEGER代替int类型名

C、q是基类型为int的指针变量D、p是基类型为int的指针变量

19、有以下程序

main()

{chara[]={‘a’,‘b’,‘c’,‘d’,‘e’,‘f’,‘g’,‘\0’};

inti,j;

i=sizeof(a);

j=strlen(a);

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

程序运行后的输出结果是b。

A、8,8B、8,7C、7,8D、9,8

20、在C程序中,可以把整型数以二进制形式存放到文件中的函数是A。

A、fprintf函数B、fread函数C、fwrite函数D、fputc函数

21、

22、设inta=2,b;

23、以下数组定义中不正确的是d。

A、inta[2][3];

B、intb[][3]={0,1,2,3};

C、intc[100][100]={0};

D、intd[3][]={{1,2},{1,2,3},{1,2,3,4}};

24、能正确表示a和b同时为正或同时为负的逻辑表达式是d。

A、(a>

=0‖b>

=0)&

(a<

0‖b<

0)

B、(a>

=0&

b>

0&

b<

C、(a+b>

0)&

(a+b<

=0)

D、a*b>

0

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

A、INPUTx,y,z;

B、scanf("

%d%d%d"

&

x,&

y,&

z);

C、scanf("

x,y,z);

D、read("

26、在Turbo2.0中,若定义charc;

.则变量c在内存中分配的字节数是a。

A、1个B、2个C、4个D、8个

27、在Turbo2.0中,若定义intc;

.则变量c在内存中分配的字节数是b。

28、在Turbo2.0中,若定义longc;

.则变量c在内存中分配的字节数是c。

29、以下运算符中优先级最高的是 c 。

A、&&   B、+、-C、()      D、%

31、以十六进制形式输出整数的格式说明符是 c 。

A、%uB、%ldC、%XD、%o

32、以八进制形式输出整数的格式说明符是 d 。

A、%uB、%ldC、%xD、%o

33、能正确表示逻辑关系:

“a≥10或a≤0”的C语言表达式是d。

A、a>

=10ora<

=0B、a>

=10|a<

=0

C、a>

=10&

a<

=0D、a>

=10||a<

=0

34、下列程序段的输出结果是c。

x=9;

while(x>

7)

{printf("

*"

);

x--;

}

A、****B、***

C、**D、*

35、C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是b。

A、地址传递B、单向值传递

C、双向值传递。

即由实参传给形参,再由形参传回给实参

D、由用户指定传递方式

36、以下正确的函数形式是d。

A、doublefun1(intx,inty)

{

z=x+y;

returnz;

B、fun1(intx,y)

intz;

C、intfun1(x,y)

intx,y;

doublez;

D、doublefun1(intx,inty)

37、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是b。

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

38、一个C语言程序是由b。

A、一个主程序和若干子程序组成

B、若干函数组成

C、若干过程组成

D、若干子程序组成

39、已知:

char*s="

Name\Address"

;

则s所指的字符串的长度为c。

A、18B、16C、13D、14

40、若有条件表达(exp)?

a++:

b--,则以下表达式中能完全等价于表达式(exp)的是b。

exp:

!

00

A、(exp==0)B、(exp!

=0)C、exp==1D、(exp!

=1)

41、以下程序有语法性错误,有关错误原因的正确说法是c。

voidmain(void)

{

intk;

voidprt_char();

……

k=prt_char(G);

A、语句voidprt_char();

有错,它是函数调用语句,不能用void说明。

B、变量名不能使用大写字母。

C、函数原型说明和函数调用语句之间有矛盾。

D、函数名不能使用下划线。

42、若有如下定义,则下面在scanf函数调用语句中对结构体成员的引用不正确是a。

structpupil

charname[20];

intage;

intsex;

}pup[5],*p;

A、scanf("

%d"

p->

age);

B、scanf("

%s"

pup[0].name);

pup[0].age);

D、scanf("

(pup[1].sex));

43、若已有定义int(*p)();

则指针pb。

A、代表函数的返回值

B、指向函数的入口地址

C、表示函数的类型

D、表示函数返回值的类型

44、若有语句:

inta=4,*p=&

a;

下面均代表地址的一组选项是c。

A、a,p,&

*aB、*&

a,*p

C、&

a,p,&

*pD、*&

p,*p,&

a

45、已知:

unsignedintx=65535;

则执行以下语句后的x值为a。

printf("

x);

A、65535B、1C、无确定值D、-1

46、求字符串长度的函数是d。

A、strcatB、strcpyC、strcmpD、strlen

45.下述对C语言字符数组的描述中错误的是b。

A、字符数组可以存放字符串。

B、字符数组的字符可以整体输入、输出。

C、可以在赋值语句中通过赋值运算符"

="

对字符数组整体赋值。

D、可以用关系运算符对字符数组中的字符进行比较。

46、以下关于do-while循环的不正确描述是b。

A、do-while的循环体至少执行一次

B、do-while循环由do开始,用while结束,在while(表达式);

后面不能写分号

C、在do-while循环体中,一定要有能使while后面表达式的值变为零("

假"

)的操作

D、do-while的循环体可以是复合语句

47、以下选项中,与k=n++完全等价的表达式是a。

A、k=n,n=n+1B、n=n+1,k=nC、k=++nD、k+=n+1

 

二、填空题(每空1分,共10分)

1、字符型数据存储时占用8位,它实际存储的是字符对应的ASCII码。

2、判断闰年的条件是:

能被4整除但不能被100整除,或能被400整除,程序中逻辑表达式可以写成if((year%4==0&

year&

100!

=0)||year%400==0).

3、一个C语言程序中必须存在的函数是主函数。

4、若a是int型变量,则表达式((a=4*5,a*2),a+6)的值为26。

5、C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递是实参传递给形参。

6、在一个字符数组中,表示一个字符串结束的转义符为'

\0'

7、在函数内部定义的变量统称为局部变量。

8、在函数外部定义的变量统称为全局变量。

9、若有定义:

intx=3,y=2;

floata=2.5,b=3.5;

则表达式(x+y)%2+(int)a/(int)b的值为1。

10、循环语句:

for(k=1;

k<

=5;

k++)执行结束后,K的值为6。

11、a为一个整型变量,pa为指向变量a的指针,则*&

a的含义是变量a,&

*pa的含义是变量a的地址。

12、程序的执行总是从主函数开始,主函数执行完时,则程序执行结束。

13、控制台标准输入设备一般是指键盘。

14、do-while语句的循环体至少执行一次。

15、循环体中continue语句的作用是结束本次循环的执行。

16、执行strcmp("

This"

"

that"

)的结果是一个负整数。

17、C源程序的基本单位是函数。

18、若有定义:

charc=10;

则变量C中包含的字符个数为一个。

19、假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为9。

20、执行下面的程序片段后,x的值是12。

i=10;

i++;

x=++i;

21、设a、b、c均是int型变量,则执行以下for循环后,c的值为10。

for(a=1,b=5;

a<

=b;

a++)c=a+b;

22、若有定义:

inta[3][2]={2,4,6,8,10,12};

则*(a[1]+1)的值是8。

23、若a=1,b=2则表达式a>

b?

a:

b+1的值是3。

24、当a=5,b=4,c=2时,表达式样a>

b!

=c的值是1。

25、若a=2,b=4,则表达式!

(x=a)||(y=b)&

0的值是0。

26、若有定义:

inta[]={2,4,6,8,10,12},*p=a;

则*(p+1)的值是4,*(a+5)的值是12。

27、若有以下定义和语句:

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

p=&

a[2];

则++(*p)的值是6。

程序运行结果题(每题4分,共20分)

1、(4分)

当运行以下程序时,从键盘键入right?

则下面程序的运行结果是?

(sjhiu)。

#include<

stdio.h>

charc;

while((c=getchar())!

=?

)putchar(++c);

2、(4分)

如果运行以下程序段输入字符为“t”,则程序段的运行结果是?

(T)。

charc1;

scanf("

%c"

c1);

c1=(c1>

=A&

c1<

=Z)?

(c1+32):

c1;

=a&

=z)?

(c1-32):

c1);

3、(4分)

以下程序的运行结果是?

(9)。

#defineA4

#defineB(x)A*x/2

floatc,a=4.5;

c=B(a);

%5.1f

"

c);

4、假定本程序执行时输入:

1357↙(↙代表回车换行符)结果是?

113468

main()

{charc;

while((c=getchar())!

='

\n'

switch(c)

{case'

0'

:

case'

1'

putchar(c);

2'

break;

3'

default:

putchar(c+1);

}113468

\n"

);

5、以下程序的运行结果是?

L=18.849556S=28.274333(%f隐含输出六位小数)

#defineR3.0

#definePI3.1415926

#defineL2*PI*R

#defineSPI*R*R

{printf(“L=%f\nS=%f\n”,L,S);

6.以下程序的运行结果是?

输出:

s=20

Main()

{inti,s=0;

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

for(i=0;

i<

=7;

i++)

if(a[i]%2==0)s=s+a[i];

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

}s=20

7.以下程序的运行结果是?

输出结果是:

LANGUAGEA

{chara[]="

language"

inti;

while(a[i])

{printf("

a[i]-32);

i++;

8以下程序运行后的输出结果是?

10,0。

main()

{intx=10,y=20,t=0;

if(x==y){t=x;

x=y;

}y=t;

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

9、有以下程序:

main()

{charc;

while((c=getchar())!

=’?

’)putchar(--c);

程序运行时,如果从键盘输入:

Z?

N?

<

回车>

,则输出结果为?

Y。

10、以下程序运行后的输出结果是?

3,4,4,3。

voidfun(intx,inty)

{x=x+y;

y=x-y;

x=x-y;

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

}

{intx=4,y=3;

fun(x,y);

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

11、下面程序的运行结果是?

5,7。

voidswap(int*a,int*b)

{int*t;

t=a;

a=b;

b=t;

{intx=7,y=5,*p=&

x,*q=&

y;

swap(p,q);

printf(“%d%d\n”,*p,*q);

12、下面程序的运行结果是?

100。

typedefunionstudent

{charname[10];

longsno;

charsex;

floatscore[5];

}STU;

{STUa[5];

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

13有以下程序,程序运行后的输出结果是?

c,C,B,c

voidfun(char*c,intd)

{*c=*c+1;

d=d+1;

printf(“%c,%c,”,*c,d);

{chara=’B’,b=’b’;

fun(&

b,a);

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

14有以下程序,运行后的输出结果是?

6

intf(intn)

{if(n==1)return1;

elsereturnf(n-1)+1;

{inti,j=0;

for(i=1;

4;

i++)j+=f(i);

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

15有以下程序,运行后的输出结果是?

8,7

16以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。

voidreverse(inta[],intn)

{inti,t;

n/2;

i++)

{t=a[i];

a[i]=a[n-1-i];

a[n-1-i]=t;

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

inti,s=0;

reverse(b,8);

for(i=6;

10;

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

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

程序运行后的输出结果是?

23

17有以下程序,程序运行后的输出结果是?

20

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

inti,s=0;

i++)s+=aa[i][1];

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

18有以下程序,程序运行后的输出结果是?

7

string.h>

{char*p=“abcdefg\0hjik\0”;

printf(“%d\n”,strlen(p));

19程序中头文件typel.h的内容是:

#defineN5

#defineM1N*3

19\程序如下:

#include“type1.h”

#defineM2N*2

{inti;

i=M1+M2;

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

程序编译后运行的输出结果是?

25

20有以下程序,程序运行后的输出结果是?

3020

{FILE*fp;

inti=30,j=20,k,n;

fp=fopen("

d1.dat"

w"

fprintf(fp,"

%d\n"

i);

j);

fclose(fp);

"

r"

fscanf(fp,"

%d%d"

k,&

n);

printf("

%d%d\n"

k,n);

21有以下程序,程序运行后的输出结果是?

8

inta=3;

{ints=0;

{inta=5;

s+=a++;

s+=a++;

s);

22有以下程序,程序运行后的输出结果是?

abcDDfefDbD

voidss(char*s,chart)

{while(*s)

{if(*s==t)*s=t-'

a'

+'

A'

s++;

{charstr1[100]="

abcddfefdbd"

c='

d'

ss(str1,c);

%s\n"

str1);

23有以下程序:

275.00

structstu

{charnum[10];

flo

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

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

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

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