C语言习题精选Word下载.docx

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

C语言习题精选Word下载.docx

《C语言习题精选Word下载.docx》由会员分享,可在线阅读,更多相关《C语言习题精选Word下载.docx(99页珍藏版)》请在冰豆网上搜索。

C语言习题精选Word下载.docx

第二章、C程序设计的初步知识

1.C语言中不能用来表示整常数的进制是(D)

(A)十进制(B)十六进制(C)八进制(D)二进制

2.在C语言中,反斜杠字符是(D)

(A)\n(B)\t(C)\v(D)\\

3.在ASCII代码表中可以看到每一个小写字母比它相应的大写字母的ASCII码A

(A)大32(B)大64(C)小32(D)小1

4.设d为字符变量,下列表达式不正确的是(C)

(A)d=97(B)d=’a’(C)d=”a”(D)d=’g’

5.10+’a’+1.5-567.345/’b’的结果是(B)

(A)long(B)double(C)int(D)unsignedfloat

6.在C语言中,运算对象必须是整型数的运算符是(A)

(A)%(B)/(C)%和/(D)**

7.为表示关系x>

=y>

=z,应使用C语言表达式(A)

(A)(y<

=x)&

&

(y>

=z)(B)(x>

=y)AND(y>

=z)(C)(x>

=z)(D)(x>

=y)&

=z)

8.若欲表示在if后a不等于0的关系,则能正确表示这一关系的表达式为(D)

(A)a<

>

0(B)!

a(C)a=0(D)a/;

[C语言常量包括数值常量(整型常量(十进制八进制)实型常量)和字

符型常量(字符常量字符串常量)]

 

9.下列常数中,合法的C常量是(A)

(A)”x-y”(B)’105’(C)’Be’(D)7ff

10.下列常数中,合法的C常量是(A)

(A)-0.(B)’105’(C)‘AB’(D)3+5

11.下列常数中,合法的C常量是(A)

(A)’\n’(B)e-310(C)’DEF’(D)’1234’

12.下列常数中,不合法的C常量是(B)

(A)-0x2a1(B)lg3(C)’[‘(D)”CHINA”

13.下列常数中,不合法的C常量是(B)

(A)-0x3b1(B)123e+2.3(C)’}’(D)6e+7

14.下列符号中,可以作为变量名的是(C)

(A)+a(B)12345e(C)a3B(D)5e+0

15.写出下列正确的输出结果BA

main()

{intx,y,z;

x=y=1;

z=x++-1;

printf(“%d,%d\t”,x,z);

z+=-x+++(++y||++z);

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

}

(A)2,03,-1(B)2,13,0(C)2,02,1(D)2,10,1

16.写出下面程序的输出结果()

{intx=40,y=4,z=4;

x=y==z;

printf(“%d”,x);

x=x==(y-z);

(A)40(B)41(C)11(D)10

17.写出下面程序的输出结果()

{intI,j;

I=16;

j=(I++)+I;

printf(“%d”,j);

I=15;

printf(“%d%d”,++I,I);

(A)321615(B)331515(C)341516(D)341615

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

x=1,y=x+3/2的值为()

(A)1(B)2(C)2.0(D)2.5

19.下列程序的执行结果是()

#definesum10+20

{intb=0,c=0;

b=5;

c=sum*b;

printf(“%d”,c);

(A)100(B)110(C)70(D)150

20.表达式(double)(20/3)的值为()

(A)6(B)6.0(C)2(D)3

1.如果intI=3;

则k=(I++)+(I++)+(I++),则k=(),I=();

2.如果intI=3;

则k=(I++)+(++I)+(I++),则k=(),I=();

3.如果intI=3;

则k=(++I)+(++I)+(I++),则k=(),I=();

4.如果intI=3;

则k=(++I)+(++I)+(++I),则k=(),I=();

5.已知在ASCII字符集中,字母A的序号为65,下面程序的输出结果为()

{charc=’A’;

intI=10;

c=c+10;

I=c%I;

Printf(“%c,%d\n”,c,I);

}

6.C语言的数据类型有四大类,其分别为(),(),(),()。

7.C语言的数据类型中构造类型包括三种,它们是(),(),()。

8.C语言基本数据类型包括(),(),(),()。

9.在C语言中,常量有不同的类型,包括(),(),()和()。

10.符号常量是指()。

11.整型常量和实型常量也称为(),它们有正负值之分。

12.C语言中,习惯上符号常量名用(),变量用()。

{大写或小写}

13.C语言在定义变量的同时说明变量的(),系统在编译时就能根据变量定义及其()为它分配相应大小的存储空间。

14.在C语言中,用来标识变量名,符号常量名,函数名,数组名,类型名,文件名的有效字符序列称为()

15.整型变量可分为(),(),(),()四种,分别用(),(),(),()表示。

16.在一个整常量后面加一个字母()或(),则认为是longint型常量。

17.在C语言中,实数有两种表示形式,即()和()。

18.下面的程序

main()

{printf(“___ab_c\t_de\rfg\n”);

printf(“h\ti\b\b\j___k”);

运行结果是()

19.在C语言中,系统在每一个字符串的结尾自动加一个”字符串结束标志符”即()以便系统据此判断字符串是否结束。

20.表达式10+’a’+1.5-0.5*’B’的结果是()

21.表达式10+’a’+1.5-567.345/’b’的结果是()型数据

22.在TURBOC中,单精度实数的数值范围约在()之间。

23.下面的程序:

{floatx;

intI;

x=3.6;

I=(int)x;

printf(“x=%f,I=%d”,x,I);

运行结果为()

24.在C语言中,表达式的类型有(),(),(),(),(),()。

25.分析下面的程序:

{inta,b,c;

a=b=c=1;

a+=b;

b+=c;

c+=a;

printf(“

(1)%d\n”,a>

b?

a:

b);

printf(“

(2)%d\n”,a>

c?

a--:

c++);

(a>

=b>

=c)?

printf(“AA”):

printf(“CC”);

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

26.用C语言描述下列命题

(1)a小于b或小于c

(2)a和b都大于c

(3)a或b中有一个小于c

(4)a是奇数

27.若x=3,y=2,z=1,求下列表达式的值:

(1)x<

y?

y:

x

(2)x<

x++:

y++

(3)z+=x<

28.sizeof用于计算出各个数据类型使用多少内存空间,若有语句:

I=sizeof(int);

j=sizeof(char),则I=();

j=()

29.若I=sizeof(float);

j=sizeof(double),则I=(),j=().

30.在C语言中,可以利用(),将一个表达式的值转换成指定的类型。

第三章、顺序结构(基本语句)

一.选择题

1.C语言中调用printf函数进行输出时需要注意,在格式控制串中,格式说明与输出项的个数必须相同。

如果格式说明的个数小于输出项的个数,多余的输出项将();

如果格式说明的个数多于输出项的个数,则对于多余的格式将输出不定值(或0)。

(A)不予输出(B)输出空格(C)照样输出(D)输出不定值或0

2.在scanf函数的格式控制中,格式说明的类型与输入项的类型应该一一对应匹配。

如果类型不匹配,系统将()。

(A)不予接收(B)并不给出出错信息,但不可能得到正确数据(C)能接收到正确输入(D)给出出错信息,不予接收输入

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

{

intI=011,j=11,k=0x11;

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

(A)9,11,17(B)9,11,11(C)11,11,11(D)11,11,16

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

#include<

stdio.h>

{printf(“%d\n”,NULL);

(A)不确定的值(因变量无定义)(B)0(C)-1(D)1

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

{charc1=’6’,c2=’0’;

printf(“%c,%c,%d,%d\n”,c1,c2,c1-c2,c1+c2);

(A)输出出错信息(B)6,0,6,102(C)6,0,7,6(D)6,0,5,7

6.有如下定义:

intx=10,y=5,z;

则语句printf(“%d\n”,z=(x+=y,x/y));

的输出结果是()

(A)1(B)0(C)4(D)3

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

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

k=(++a<

=0)&

!

(b--<

=0);

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

(A)104(B)004(C)103(D)003

8.若有定义:

intx,y;

chara,b,c;

并有以下输入数据(此处,<

cr>

代表换行符)

12<

ABC<

则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是:

(A)scanf(“x=%dy=%d”,&

x,&

y);

a=getchar();

b=getchar();

c=getchar();

(B)scanf(“%dy%d”,&

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

y,&

a,&

b,&

c,&

c);

(D)scanf(“%d%d%c%c%c”,&

9.若已定义inta=25,b=14,c=19;

以下三项运算符(?

:

)所构成的语句的执行结果是()

a++<

=25&

b--<

=2&

c++?

printf(“***a=%d,b=%d,c=%d\n”,a,b,c):

printf(“###a=%d,b=%d,c=%d\n”,a,b,c)

(A)(***a=25,b=14,c=19)(B)(***a=26,b=13,c=19)(C)(###a=25,b=14,c=19)

(D)(###a=26,b=13,c=19)

10.以下C程序,正确的运行结果是()(注_代表空格)

{longy=-34567;

printf("

y=%-8ld\n"

y);

y=%-08ld\n"

y=%08ld\n"

y=%+8ld\n"

(A)y=__-34567(B)y=-34567(C)y=-34567(D)y=__-34567

y=-__34567y=-34567y=-34567y=-0034567

y=-0034567y=-0034567y=-0034567y=00034567

y=-34567y=+_-34567y=__-34567y=+34567

二.填空题

1.C语言中的语句可分为五类,即()、()、()、()、()。

2.由一次函数调用加一个分号构成一个()语句。

3.printf是C语言提供的标准输出函数,它的作用是()。

4.printf函数的”格式控制”包括两部分,它们是()和()。

5.如果想输出字符”%”,则应该在”格式控制”字符串中用()表示。

6.符号’&

’是()运算符,&

a是指()。

7.scanf函数的”格式控制”后面应当是(),而不是()。

8.C语言中的空语句就是()。

9.返回语句的功能是从()返回()。

10.复合语句是由一对()括起来的若干语句组成的。

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

{charb[]=”ABCDEFG”;

char*chp=&

b[7];

while(--chp>

b[0])

putchar(*chp);

putchar(‘\n’);

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

{intx=2,y,z;

x*=3+2;

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

x*=y=z=4;

x=y=z;

x=(y=z);

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

{printf(“%d”,1<

4&

4<

7):

printf(“%d”,1<

7<

4);

printf(“%d”,(2<

5));

printf(“%d”,!

(1<

3)||(2<

(4<

=6)&

(3<

=7));

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

{intx,y;

x=16;

y=(x++)+x;

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

x=15;

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

x=20;

y=x--+x;

x=13;

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

15.阅读程序

{charstr1[]="

peopleandcomputer"

str2[10];

char*p1=str1,*p2=str2;

scanf("

%s"

p2);

%s\n"

p1);

运行上面的程序,输入字符串PEOPLEANDCOMPUTER,则程序的输出结果是()。

三.编程题

1.从键盘输入一个大写字母,要求改用小写字母输出;

2.编写程序,判断某一年是否闰年;

3.编写求方程ax2+bx+c的解x的程序;

第四章、选择结构

1.下列运算符中优先级最高的是()。

(A)>

(B)+(C)&

(D)!

=

2.逻辑运算符运算对象的数据类型()。

(A)只能是0和1(B)只能是.T.或.F.(C)只能是整型或字符型(D)任何类型的数据

3.能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是()。

(A)(X<

=-10)||(x>

=-5)&

(x<

=0)||(x>

=100)(B)(x>

=-10)&

=-5)||(x>

=0)&

=100)

(C)(x>

(x>

=100)(D)(x<

4.以下程序的运行结果是()。

Main()

{intc,x,y;

x=1;

y=1;

c=0;

c=x++||y++;

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

(A)110(B)211(C)221(D)001

5.以下程序的运行结果是()。

x=0;

y=0;

c=x++&

y++;

(A)100(B)110(C)011(D)001

6.两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是()。

{intx;

scanf(“%d”,&

x);

if(x++>

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

elseprintf(“%d\n”,x--);

(A)7和5(B)6和3(C)7和4(D)6和4

7.写出下面程序的运行结果()。

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

if(z<

0)

if(y>

0)x=3;

elsex=5;

printf(“%d\t”,x);

if(z=y<

elseif(y==0)x=5;

elsex=7;

printf(“%d\t”,z);

(A)170(B)370(C)550(D)151

8.写出下面程序的运行结果()。

{intx,y=1,z=0;

if(y!

=0)x=5;

printf(“x=%d\t”,x);

if(y==0)x=3;

elsex=5;

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

if(y>

elseif(y==0)x=5;

printf(“x=%d\t”,x);

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

if(x=z=y)x=3;

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

(A)x=5x=5(B)x=5x=5(C)x=5x=5(D)x=5x=5

x=1x=1x=5x=1

x=7z=0x=5z=0x=7z=0x=7z=0

x=3z=1x=3z=0x=3z=1x=3z=0

9.若有以下函数关系

x<

0时y=2x

x>

0时y=x

x=0时y=x+1

下面程序段能正确表示以上关系的是()。

(A)y=2x;

(B)y=2x;

(C)if(x>

=0)(D)y=x+1;

if(x!

=0)if(x<

=0)if(x>

0)y=x;

if(x<

=0)

if(x>

if(x==0)y=x+1;

elsey=x+1;

0)y=2x;

elsey=x;

elsey=2x;

10.若有以下变量定义:

floatx;

inta,b;

则正确的switch语句是()。

(A)switch(x)(B)switch(x)(C)switch(a+b)(D)switch(a+b)

{case1.0:

printf(“ok”);

{case1,2:

{case1:

case2.0:

printf(“this”);

case.3:

case2*a:

case1+2:

}}}}

1.以下两条if语句合并成一条if语句为()。

if(a<

=b

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

当前位置:首页 > 职业教育 > 职高对口

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

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