C语言补充题.docx

上传人:b****5 文档编号:30365366 上传时间:2023-08-13 格式:DOCX 页数:15 大小:18.01KB
下载 相关 举报
C语言补充题.docx_第1页
第1页 / 共15页
C语言补充题.docx_第2页
第2页 / 共15页
C语言补充题.docx_第3页
第3页 / 共15页
C语言补充题.docx_第4页
第4页 / 共15页
C语言补充题.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

C语言补充题.docx

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

C语言补充题.docx

C语言补充题

C语言程序设计指导补充题

数据类型、运算符与表达式简单程序设计题

选择题(1--29)

1、若有代数式(a*b)/(c*d),则错误的C语言表达式是()。

Aa/c/d*b

Ba*b/c*d

Ca*b/c/d

Da*b/(c*d)

答案:

B

2、以下程序实现将两个数进行对调的操作。

#include

main()

{inta,b,c;

scanf("%d%d",&a,&a);

printf("a=%db=%d",a,b);

c=

(1);a=

(2);b=(3);

printf("a=%db=%d\n",a,b);

}

A

(1)a

(2)b(3)c

B

(1)b

(2)c(3)a

C

(1)a

(2)c(3)b

D

(1)b

(2)a(3)c

答案:

A

3、在C语言中,下列为单目运算符是()。

A%

B/

C<

D!

答案:

D

4、下面程序的输出是()。

main()

{inta=-1,b=4,k;

k=(a++>=0)&&(!

(b--<=0));

printf("%d%d%d",k,a,b);

}

A103

B012

C004

D112

答案:

C

5、为表示关系x≥y≥z,应使用C语言表达式()。

A(x>=y)AND(y>=z)

B(x>=y)&&(y>=z)

C(x>=y>=z)

D(x>=y)&(y>=z)

答案:

B

6、设有如下定义:

intx=5,y=3,z;

则语句

printf(""%d"",z=(x/y,x%y));

的输出结果是()。

A0

B1

C2

D3

答案:

C

7、已知字母A的ASCⅡ码为十进制的65,下面程序的输出是()。

main()

{charch1,ch2;

ch1=‘B’+‘5’-‘3’;

ch2=‘B’+‘6’-‘4’;

printf(""%d,%c\n"",ch1,ch2);}

AB,C

BB,D

C68,D

D68,E

答案:

C

8、C语言中最简单的数据类型包括()。

A整型、实型、逻辑型

B整型、实型、字符型

C整型、字符型、逻辑型

D整型、实型、逻辑型、字符型

答案:

B

9、C语言提供的合法的数据类型关键字是()。

ADouble

BSHORT

Cint

DChar

答案:

C

10、表达式9!

=8的值是()。

Atrue

B非零值

C0

D1

答案:

D

11、若有说明和语句:

inta=5;

++a;

此处表达式++a的值是()。

A7

B6

C5

D4

答案:

B

12、能正确表示a≥10或a≤0关系的表达式是()。

Aa>=10ora<=0

Ba>=10||a<=0

Ca≥10||a≤0

Da>=10|a<=0

答案:

B

13、下面程序的输出是()。

main()

{intk=10;printf(""k=%d,k=%o,k=%x"",k,k,k);}

Ak=10,k=12,k=a

Bk=10,k=112,k=112

Ck=10,k=012,k=0xa

Dk=10,k=11,k=11

答案:

A

14、用十进制数表示表达式:

20/0x13的运算结果是()。

A0

B1

C2

D20

答案:

B

15、若已定义x和y为double类型,则表达式:

x=2,y=x+1/2的值是()。

A1

B2

C2.0

D2.5

答案:

C

16、下面程序的输出是()。

main()

{unsigneda=32768;

printf(""a=%d\n"",a);

}

Aa=32768

Ba=-32768

Ca=-32767

Da=-1

答案:

B

17、设a=4,b=3,c=2,d=1,则表达式a

a:

c>d?

a:

d的结果为()。

A4

B3

C2

D1

答案:

A

18、设x为int型变量,则执行以下语句后,y的值为()。

x=11;y=x--+1

A10

B9

C11

D12

答案:

D

19、设x,y,z,t均为int型变量,则执行以下语句后,t的值为()。

x=y=z=0;

t=!

x||y&&z;

A不定值

B2

C1

D0

答案:

B

20、设x、y、z和k都是int型变量,则执行表达式:

x=(y=4,z=16,k=32)后,x的值为()。

A4

B16

C32

D52

答案:

C

21、假定有以下变量定义:

intk=7,x=12;

则能使值为4的表达式是()。

Ax%=(k%=3)

Bx%=(k-k%3)

Cx%=k-k%3

D(x%=k)-(k%=3)

答案:

D

22、设x和y均为int型变量,则以下语句:

x+=y;y=x-y;x-=y;的功能是()。

A把x和y按从大到小排列

B交换x和y中的值

C无确定结果

D把x和y按从小到大排列

答案:

B

23、语句printf("%d",(a=2)&&(b=~2));的输出结果是()。

A无输出

B0

C1

D-1

答案:

C

24、以下程序的输出结果是()。

main()

{intx=10,y=10,i;

for(i=0;x>8;y=++i)

printf(""%d%d"",x--,y);

}

A10192

B101091

C10990

D9876

答案:

B

25、下列程序的输出结果是()。

main()

{doubled=3.2;intx,y;

x=1.2;y=(x+3.8)/5.0;

printf(""%d\n"",d*y);

}

A3

B3.2

C0

D3.07

答案:

C

26、"下列程序执行后的输出结果是(小数点后只写一位)()。

main()

{doubled;floatf;longl;inti;

i=f=l=d=20.0/3;

printf(""%d%ld%.1f%.1f"",i,l,f,d);

}

A666.76.7

B666.06.0

C666.06.7

D666.76.0

答案:

C

27、下列程序执行后的输出结果是()。

main()

{intx=‘g’;printf(""%c"",‘A’+(x-‘a’+1));}

AG

BH

CI

DJ

答案:

B

28、设intb=2;表达式(b<<1)/(b>>1)的值是()。

A0

B2

C4

D8

答案:

C

29、下列程序执行后的输出结果是()。

main()

{charx=0xFFFF;printf(""%d"",x--);}

A-32767

BFFFE

C-32768

D-1

答案:

D

函数、结构体公用体

填空题

1、静态变量和外部变量的初始化是在______阶段完成的.

答案:

编译

文件操作和位操作

选择题

1、以下程序的输出是()。

structs

{intx;

int*y;}*p;

intd[3]={10,20,30};

structsa[3]={71,&d[0],63,&d[0],64,&d[0]};

main()

{p=a;

printf(""%d"",++(p->x));}

A64

B72

C71

D11

答案:

B

2、以下程序的输出结果是()。

unionmyun

{struct

{intx,y,z;}u;

intk;

}a;

main()

{a.u.x=7;a.u.y=8;a.u.z=9;

a.k=5;

printf(""%d"",a.u.x);

}

A4

B5

C6

D0

答案:

B

3、设有以下说明语句:

typedefstruct

{intn;

charch[8];

}PER;

则下面叙述中正确的是()。

APER是结构体变量名

BPER是结构体类型名

Ctypedefstruct是结构体类型

Dstruct是结构体类型名

答案:

B

4、有以下程序:

structSTU

{charnum[10];floatscore[3];}

main()

{structSTUs[3]={{""20021"",95,95,85},

{""20022"",95,85,75},{""20023"",100,95,90}};

structSTU*p=s+2;

inti;floatsum=0;

for(i=0;i<3;i++)sum=sum+p->score[i];

printf(""%f"",sum);

}运行后结果为()

A260.00

B270.00

C250.00

D285.00

答案:

D

5、"若有以下说明和定义:

typedefint*INTEGER

INTEGERp,*q;

以下叙述正确的是()。

Ap是int型变量

Bp是基类型为int*的指针变量

Cq是基类型为int的指针变量

D程序中可用INTEGER代替int*

答案:

D

6、设有如下说明:

typedefstruct

{intn;charc;doublex;}STD;

则以下选项中,能正确定义结构体数组并赋初值的语句是()。

ASTDtt[2]={{1,‘A’,62},{2,‘B’,75}};

BSTDtt[2]={1,"A",62,2,"",75};

Cstructtt[2]={{1,‘A’},{2,‘B’}};

Dstructtt[2]={{1,"A",62.5},{2,"B",75.0}};

答案:

A

7、有以下程序

structs

{intx,y;}data[2]={10,100,20,200};

main()

{structs*p=data+1;

printf(""%d"",++(p->x));

}

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

A10

B21

C20

D101

答案:

B

8、下面的程序执行后,文件test.t中内容是()。

voidfun(char*fname,char*st)

{FILE *myf;inti;

myf=fopen(fname,""w"");

for(i=0;i

fclose(myf);

}

main()

{fun(""test.t"",""newworld"");fun(""test.t"",""hello!

"");}

Ahello,

Bnewworldhello

Chello!

Dnewworldhello,

答案:

C

9、下列对于文件的打开方式叙述中,错误的是()。

A用"r"方式打开的文件只能读

B用"w"方式打开的文件只能向该文件写数据

C用"a"方式打开的文件既能读,又可以向该文件写数据

D如果不能打开文件,fopen函数将会带回一个错信息

答案:

C

10、下列定义中不正确的是_____。

Aint*p,**q;

Bintp[n];

Cint*p(n);

Dint(*p)();

答案:

C

11、两个指针变量不可以_____。

A相加

B比较

C相减

D指向同一地址

答案:

A

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

当前位置:首页 > 小学教育 > 学科竞赛

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

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