C复习题Word格式.docx

上传人:b****6 文档编号:16188871 上传时间:2022-11-21 格式:DOCX 页数:21 大小:19.69KB
下载 相关 举报
C复习题Word格式.docx_第1页
第1页 / 共21页
C复习题Word格式.docx_第2页
第2页 / 共21页
C复习题Word格式.docx_第3页
第3页 / 共21页
C复习题Word格式.docx_第4页
第4页 / 共21页
C复习题Word格式.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

C复习题Word格式.docx

《C复习题Word格式.docx》由会员分享,可在线阅读,更多相关《C复习题Word格式.docx(21页珍藏版)》请在冰豆网上搜索。

C复习题Word格式.docx

b[2],"

ABC"

%s\n"

b);

CDABC

第4题(2.0分)题号:

1173

#include<

stdio.h>

intb;

intfun(inta)

{staticintc=2;

return((++a)+(++b)+(++c));

voidmain()

{inti,a=1;

2;

i++)

%5d"

fun(a));

68

第5题(2.0分)题号:

1147

在函数内部声明局部变量时缺省了存储类型,则该变量存储类型是【1】.

auto

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

自动型

第6题(2.0分)题号:

1160

有以下定义和语句

structdate

{intday;

intmonth;

intyear;

union

{intshare1;

floatshare2;

}share;

}a;

则sizeof(a)的值是【1】.

10

第7题(2.0分)题号:

1428

以下程序的运行结果是【1】

{inta[3][4]={{1,3,5,7},{9,11,13,15},{17,19,21,23}};

inti;

int(*p)[4]=a;

a[2][3]=%d\n"

i,j,*(*(p+i)+j));

15

第8题(2.0分)题号:

1427

voidswap(int**r,int**s)

{int*t;

t=*r;

*r=*s;

*s=t;

{inta=1,b=2,*p,*q;

p=&

a;

q=&

b;

swap(&

p,&

q);

%d,%d\n"

*p,*q);

2,1

第9题(4.0分)题号:

1155

以下程序运行时,输出结果的第一行是【1】,第二行是【2】.

voidf(int*x,inty)

{*x=y+1;

y=*x+2;

}

main()

{inta=2,b=2;

f(&

a,b);

%d\n%d"

a,b);

3

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

2

第10题(4.0分)题号:

1152

设有以下main函数

main(intargc,char*argv[])

{while(argc>

1)

{++argv;

%s\n"

*argv);

--argc;

经过编译、连接后得到可执行文件名为c1.exe,

若在系统的命令状态下输入命令行:

c1nanjingxiaozhuangcollege<

回车>

则在第一行输出【1】,第三行输出【2】.

nanjing

college

第11题(4.0分)题号:

1179

请填空以使程序完整。

有一个m*n的矩阵,以下程序的功能是求出其中值最大的元素的值,以及相应得行号和列号。

#defineM4

#defineN3

{

inti,j,row=0,colum=0,max;

inta[M][N]={{1,23,3},{4,8,6},{17,6,1},{0,11,17}};

【1】;

for(i=0;

=3;

for(j=0;

j<

=2;

j++)

if(【2】)

{

max=a[i][j];

row=i;

colum=j;

printf("

max=%d,row%d,colum=%d\n"

max,row,colum);

max=a[0][0]

a[i][j]>

max

max<

a[i][j]

第12题(4.0分)题号:

1130

以下程序的功能是:

将无符号八进制数字构成的字符串转换为十进制整数.例如,输入的字

符串为:

556,则输出十进制整数366.请填空.

{chars[6];

intn,i=0;

gets(s);

n=【1】-'

0'

;

while(【2】!

='

\0'

)n=n*8+s[i]-'

%d\n"

n);

s[0]

s[++i]

第13题(6.0分)题号:

1177

该程序功能是:

将有10个元素的整型数组a中下标值为偶数的元素从大到小排列,其他元素不变。

#definek10

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

inti,j;

k;

a[i]);

=【1】;

i=i+2)

for(j=i+2;

j+=2)

if(【2】)

{t=a[i];

【3】;

a[j]=t;

k-2

a[i]<

a[j]

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

a[i]=a[j]

第14题(6.0分)题号:

1178

该程序的功能是把从键盘输入的十进制(long型)以16进制数的形式输出。

main()

charb[16]={'

'

1'

2'

3'

4'

5'

6'

7'

8'

9'

A'

B'

C'

D'

E'

F'

};

intc[64],d,i=0;

longn;

Enteranumber:

scanf("

%ld"

n);

do

c[i]=【1】;

i++;

n=【2】;

}while(n!

=0);

Transmitemewbase:

for(--i;

i>

=0;

--i)

【3】;

%c"

b[d]);

n%16

n/16

d=c[i]

第15题(6.0分)题号:

1157

阅读以下程序

main()

{char*str[3]={"

Fortrain"

"

Prolog"

Pascal"

char**p;

p=str;

i++,p++)

%c\n"

(*(*p+3)+1));

该程序第1行、第2行及最后一行的输出分别为【1】、【2】和【3】.

u

m

d

第16题(6.0分)题号:

1419

以下程序使用递归方法求数组中的最大值及其下标值,请填空:

#defineM10

voidfindmax(int*a,intn,inti,int*pk)

{if(i<

n)

{if(a[i]>

a[*pk])【1】;

findmax(a,n,i+1,【2】);

{inta[M],i,n=0;

\nEnter%ddata:

M);

M;

%d"

【3】);

findmax(a,M,0,&

Themaximumis:

%d\n"

a[n]);

it'

sindexis:

*pk=i

&

(*pk)

a+i

第17题(4.0分)题号:

1156

Basic"

VisualC++"

i<

i++,p++)

该程序第1行、第2行及最后一行的输出分别为【1】、【2】和【3】.

j

v

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

1300

以下合法的赋值语句是().

A:

x=y=100

B:

d--;

C:

x+y

D:

c=int(a+b);

B

1294

已知字符A的ASCII码为65,则执行下列函数调用语句时,不能输出字符B的是().

putchar('

putchar("

B"

putchar(66);

\x42'

1303

若以下选项中的变量已正确定义,则正确的赋值语句是().

x1=86.8%3

1+9=x2

x3=0x1f

x4=1+6=7

C

1301

若有声明"

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

"

则下列关系表达式中有语法错误的是________.

x>

y=2

z>

y>

x

y==1

x==(x=0,y=1,z=2)

A

1299

有声明intx=2;

以下表达式中值不等于8的是________.

x+=2,x*2

x+=x*=x

(x+7)/2*((x+1)%2+1)

x*7.2/x+1

D

1307

若有数组A和B的声明"

staticcharA[]="

ABCDEF"

B[]={'

'

则数组A和数组B的长度分别是________.

7,6

6,7

6,6

7,7

1306

以下程序运行后的输出结果是________.

{chara[7]="

a0\0a0\0"

inti,j;

i=sizeof(a);

j=strlen(a);

%d%d"

i,j);

22

72

75

62

990

以下不正确的说法为()

在函数内的复合语句中定义的变量在本函数范围内有效

在不同函数中可以使用相同名字的变量

在函数内定义的变量只在本函数范围内有效

形式参数是局部变量

第9题(2.0分)题号:

1529

以下程序运行结果()

longfun(intn)

{longs;

if(n==1||n==2)s=2;

elses=n-fun(n-1);

returns;

%d\n"

fun(3));

1

第10题(2.0分)题号:

1312

下面程序运行后的输出结果是______.

main()

{chararr[2][4];

strcpy(arr[0],"

you"

strcpy(arr[1],"

me"

arr[0][3]='

'

arr[0]);

}

you&

me

you

err

第11题(2.0分)题号:

1335

以下叙述正确的是().

一个用C语言编写的程序在运行时总是从main函数开始逐条执行

main函数是系统库函数

main函数中每行只能出现一条语句

main函数必须出现在所用其它函数之前

第12题(2.0分)题号:

1331

语句printf("

(a=2)&

(b=-2));

的输出结果是()

无输出

结果不确定

-1

第13题(2.0分)题号:

1342

若有函数fun的定义为

voidfun(…)

{staticinta=1;

……

则下列叙述中不正确的是().

在每次调用fun函数时,变量a的值是上次调用结束时a的值

在fun函数之外,可以用变量名a直接引用a的值

在其它函数中,可以出现声明doublea=2.5;

fun函数的形式参数不能取名为a

第14题(2.0分)题号:

1531

以下程序输出结果是()

voidmain()

inti,a[10];

for(i=9;

i--)

a[i]=10-i;

%d%d%d"

a[2],a[4],a[8]);

852

741

862

369

第15题(2.0分)题号:

1313

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

for(i='

=T;

i++)printf("

i+32);

编译不通过,无输出

ABCDEFGH

abcdefghi

abcdefgh

第16题(2.0分)题号:

1330

以下关于if语句,描述错误的是().

条件表达式可以是任意的表达式

条件表达式只能是关系表达式或逻辑表达式

条件表达式的括号不可以省略

与else配对的if语句是其之前最近的未配对的if语句

第17题(2.0分)题号:

1332

以下程序段循环执行的次数是().

intk=0;

while(k=1)k++;

while

无限次

有语法错,不能执行

一次也不执行

执行1次

第18题(2.0分)题号:

1340

以下正确的叙述是()

在C程序中,语句之间必须要用分号"

分隔

若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型

在C程序中,无论是整数还是实数,都能准确无误地表示

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

第19题(2.0分)题号:

2068

若有以下定义,则对a数组元素的正确引用是()

inta[5],*p=a;

p+5

*(a+2)

a+2

a+1

第20题(2.0分)题号:

1344

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

{inti,s=0;

for(i=1;

10;

i+=2)s+=i+1;

s);

自然数1~9的累加和

自然数1~10的累加和

自然数1~9中的奇数之和

自然数1~10中的偶数之和

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

当前位置:首页 > 工程科技 > 兵器核科学

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

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