Java基础习题0.docx

上传人:b****5 文档编号:4164283 上传时间:2022-11-28 格式:DOCX 页数:23 大小:24.44KB
下载 相关 举报
Java基础习题0.docx_第1页
第1页 / 共23页
Java基础习题0.docx_第2页
第2页 / 共23页
Java基础习题0.docx_第3页
第3页 / 共23页
Java基础习题0.docx_第4页
第4页 / 共23页
Java基础习题0.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

Java基础习题0.docx

《Java基础习题0.docx》由会员分享,可在线阅读,更多相关《Java基础习题0.docx(23页珍藏版)》请在冰豆网上搜索。

Java基础习题0.docx

Java基础习题0

Java基础习题0

1.下列语句序列执行后,m的值是(C)。

inta=10,b=3,m=5;

if(a==b)m+=a;elsem=++a*m;

A)15B)50C)55D)5

2.下列语句序列执行后,k的值是(B)。

inti=4,j=5,k=9,m=5;

if(i>j||m

A)5B)10C)8D)9

3.下列语句序列执行后,x的值是(D)。

inta=2,b=4,x=5;

if(a<--b)x*=a;

A)5B)20C)15D)10

4.下列语句序列执行后,b的值是(B)。

inta=2,b=4;

if(a<--b)a*=a;

A)5B)3C)15D)10

5.下列语句序列执行后,m的值是(D)。

inti=9,j=8,m=10,n=9;

if(i

A)6B)7C)8D)9

6.下列语句序列执行后,x的值是(A)。

inta=3,b=4,x=5;

if(++a

A)5B)3C)4D)6

7.下列语句序列执行后,ch1的值是(B)。

charch1=’A’,ch2=’W’;

if(ch1+2

A)‘A’B)‘B’C)‘C’D)B

8.下列语句序列执行后,x的值是(B)。

inta=2,b=4,x=5;

if(a<--b)x*=a;

inta=3,b=4,x=5;

if(++a==b)x=++a*x;

A)35B)25C)20D)5

9.下列语句序列执行后,k的值是(C)。

inti=6,j=8,k=10,m=7;

if(i>j||m

A)12B)11C)10D)9

10.下列语句序列执行后,k的值是(C)。

inti=10,j=18,k=30;

switch(j-i)

{case8:

k++;

case9:

k+=2;

case10:

k+=3;

default:

k/=j;

}

A)31B)32C)2D)33

11.若a和b均是整型变量并已正确赋值,正确的switch语句是(D)。

A)switch(a+b);{......}B)switch(a+b*3.0){......}

C)switcha{......}D)switch(a%b){......}

12.下列语句序列执行后,r的值是(C)。

charch='8';intr=10;

switch(ch+1)

{

case'7':

r=r+3;

case'8':

r=r+5;

case'9':

r=r+6;break;

default:

r=r+8;

}

A)13B)15C)16D)18

13.设int型变量a、b,float型变量x、y,char型变量ch均已正确定义并赋值,正确的switch语句是(B)。

A)switch(x+y){......}B)switch(ch+1){......}

C)switchch{......}D)switch(a+b);{......}

14.下列语句序列执行后,k的值是(D)。

intx=6,y=10,k=5;

switch(x%y)

{

case0:

k=x*y;

case6:

k=x/y;

case12:

k=x-y;

default:

k=x*y-x;

}

A)60B)5C)0D)54

15.下列语句序列执行后,r的值是(B)。

charch='A';intr=6;

switch(ch+5)

{

case'A':

r=r+3;

case'B':

r=r+5;

case'C':

r-=6;break;

default:

r/=2;

}

A)11B)3C)2D)9

16.以下for循环的执行次数是(B)。

for(intx=0;(x==0)&(x>4);x++);

A)无限次B)一次也不执行C)执行4次D)执行3次

17.下列语句序列执行后,j的值是(A)。

intj=1;

for(inti=5;i>0;i-=2)j*=i;

A)15B)1C)60D)0

18.以下for循环的执行次数是(B)。

for(intx=0;(x==0)&(x<4);x++);

A)无限次B)一次C)执行4次D)执行3次

19.下列语句序列执行后,j的值是(D)。

intj=2;

for(inti=7;i>0;i-=2)j*=2;

A)15B)1C)60D)32

20.以下for循环的执行次数是(B)。

for(intx=0,y=0;(y!

=0)&&(x<4);x++);

A)无限次B)一次也不执行C)执行4次D)执行3次

21.下列语句序列执行后,j的值是(D)。

intj=0;

for(inti=3;i>0;i--)j+=i;

A)3B)4C)5D)6

22.以下由for语句构成的循环执行的次数是(B)。

for(inti=0;true;i++);

A)有语法错,不能执行B)无限次

C)执行1次D)一次也不执行

23.下面语句执行后,i的值是(B)。

for(inti=0,j=1;j<5;j+=3)i=i+j;

A)4B)5C)6D)7

24.下列语句序列执行后,k的值是(D)。

intj=8,k=15;

for(inti=2;i!

=j;i++){j-=2;k++;}

A)18B)15C)16D)17

25.下列语句序列执行后,k的值是(B)。

intm=3,n=6,k=0;

while((m++)<(--n))++k;

A)0B)1C)2D)3

26.下列语句序列执行后,i的值是(D)。

ints=1,i=1;

while(i<=4){s*=i;i++;}

A)6B)4C)24D)5

27.下列语句序列执行后,k的值是(C)。

intm=3,n=6,k=0;

while(m

A)0B)1C)2D)3

28.下列语句序列执行后,j的值是(C)。

intj=8,i=6;

while(--i>4)--j;

A)5B)6C)7D)8

29.下列语句序列执行后,j的值是(C)。

intj=8,i=6;

while(i>4)i-=2;

--j;

A)5B)6C)7D)8

30.下列语句序列执行后,j的值是(B)。

intj=9,i=6;

while(i-->3)--j;

A)5B)6C)7D)8

31.下列语句序列执行后,j的值是(D)。

intj=3,i=2;

while(--i!

=i/j)j=j+2;

A)2B)4C)6D)5

32.若有循环:

intx=5,y=20;

do{y-=x;x+=2;}while(x

则循环体将被执行(A)。

A)2次B)1次C)0次D)3次

33.以下由do-while语句构成的循环执行的次数是(B)。

intm=8;

do{++m;}while(m<8);

A)一次也不执行B)执行1次

C)8次D)有语法错,不能执行

34.下列语句序列执行后,i的值是(A)。

inti=10;

do{i/=2;}while(i>1);

A)1B)5C)2D)0

35.下列语句序列执行后,i的值是(D)。

inti=10;

do{i/=2;}while(i-->1);

A)1B)5C)2D)-1

36.下列语句序列执行后,i的值是(C)。

inti=10;

do{i-=2;}while(i>6);

A)10B)8C)6D)4

37.下列语句序列执行后,i的值是(D)。

inti=16;

do{i/=2;}while(i>3);

A)16B)8C)4D)2

38.以下由do-while语句构成的循环执行的次数是(B)。

intk=0;

do{++k;}while(k<1);

A)一次也不执行B)执行1次C)无限次D)有语法错,不能执行

39.若有循环:

intx=5,y=20;

do{y-=x;x++;}while(++x<--y);

则循环体将被执行(C)。

A)0次B)1次C)2次D)3次

40.下列循环中,执行breakouter语句后,所列(C)语句将被执行。

outer:

for(inti=1;i<10;i++)

{

inner:

for(intj=1;j<10;j++)

{

if(i*j>50)

breakouter;

System.out.println(i*j);

}

next:

A)标号为inner的语句B)标号为outer的语句

C)标号为next的语句D)以上都不是

41.下列循环中,执行continueouter语句后,(A)说法正确。

outer:

for(inti=1;i<10;i++)

{

inner:

for(intj=1;j<10;j++)

{

if(i*j>50)

continueouter;

System.out.println(i*j);

}

}

A)程序控制在外层循环中并且执行外层循环的下一迭代

B)程序控制在内层循环中并且执行内层循环的下一迭代

C)执行标号为next的语句

D)以上都不是

2.找出下面各段程序中的错误:

a)For(i=100,i>=1,i++)

System.out.println(i);

答案:

For的F应该小写;For头中应当使用分号,而应当使用逗号;++应当为――

答案:

应当在case0中放置一条break语句

c)下面的代码应输入从19~1之间的所有奇数:

for(i=19;i>=1;i+=2)

System.out.println(i);

答案:

+=应该为-=

d)下面的代码应输出从2到100之间的所有偶数:

counter=2;

do{

System.out.println(counter);

counter+=2;

}While(counter<100)

答案:

while的W应当小写;<应当为<=

3.指出并纠正下面各段代码中的错误:

a)

while(c<=5){

product*=5;

c++;

b)

if(gender==1)

System.out.println(“woman”);

else;

System.out.println(“Man”);

答案:

a)错误:

漏掉了while循环的右花括号

纠正:

在最后加上右花括号

b)错误:

else后的分号导致一个逻辑错误,第二个输出语句无论如何都会执行。

纠正:

去掉else后面的分号。

4.下面的while循环结构有什么错误?

while(z>=0)

sum+=z;

答案:

变量z在while循环中一直没有改变,如果循环条件(z>=0)为真,则会出现死循环,为了避免,必须使得变量z递减,使其最终小于0;

5.指出并纠正下列各段代码的错误。

(注解:

每段代码中可能包含多个错误。

a)if(age>=65);

System.out.println(“Agegreaterthanorequalto65”);

else

System.out.println(“Ageislessthan65”);

答案:

if后不能有分号,将分号去掉可以改正这个错误。

b)intx=1,total;

while(x<=10){

total+=x;

++x;

}

答案:

total+=x语句中,total没有初始数值,无法使用,在定义total时为其赋值0可以解决这个错误。

c)while(x<=100)

total+=x;

++x;

答案:

循环为死循环,直到超出total的取值范围,在(x<=100)后添加{,然后在++x;后添加}可以解决这个错误。

6.找出下面各段代码中的错误,并解释如何改正它。

a)

for(k=0;k!

=1.0;k+=0.1)

System.out.println(k);

b)如下代码应打印1~10的值

n=1;

while(n<10)

System.out.println(n++);

答案:

a)错误:

浮点数作控制变量,for循环将不工作,因为浮点数在大多数计算机中只是近似值。

改正:

用一个整数取代浮点数,并用适当的计算获取所要的值:

for(k=1;k!

=10;k++)

System.out.println((float)k/10);

b)错误:

在while循环继续条件中用了错误的关系运算符。

改正:

用<=代替<,或者将10改为11也可以。

Java基础习题(附答案)2收藏

1.以下方法fun的功能是求两参数之积。

(returna*b)

intfun(inta,intb){__________________;}

2.以下方法fun的功能是求两参数之积。

(return(float)a*b)

floatfun(inta,doubleb){__________________;}

3.以下方法fun的功能是求两参数的最大值。

(returna>b?

a:

b)

intfun(inta,intb){__________________;}

4.以下方法m的功能是求两参数之积的整数部分。

(return(int)(a*b))

intm(floatx,floaty){__________________;}

5.下面是用户程序对Applet类中方法paint()的重新定义。

(voidcall)

public___paint(Graphics____)

{call.drawString("Hello,java!

",10,20);}

6.下面方法的功能是判断一个整数是否为偶数,将程序补充完整。

(booleantrue)

public________isEven(inta)

{if(a%2==0)

return_____;

else

returnfalse;

}

7.同一个类中多个方法具有相同的方法名,不同的_____________称为方法的重载。

(参数列表)

二.选择题及答案

1.下列方法定义中,正确的是(D)。

A)intx(inta,b){return(a-b);}

B)doublex(inta,intb){intw;w=a-b;}

C)doublex(a,b){returnb;}

D)intx(inta,intb){returna-b;}

2.下列方法定义中,正确的是(D)。

A)voidx(inta,intb);{return(a-b);}

B)x(inta,intb){returna-b;}

C)doublex{returnb;}

D)intx(inta,intb){returna+b;}

3.下列方法定义中,不正确的是(D)。

A)floatx(inta,intb){return(a-b);}

B)intx(inta,intb){returna-b;}

C)intx(inta,intb);{returna*b;}

D)intx(inta,intb){return1.2*(a+b);}

4.下列方法定义中,正确的是(A)。

A)intx(){charch='a';return(int)ch;}

B)voidx(){...returntrue;}

C)intx(){...returntrue;}

D)intx(inta,b){returna+b;}

5.列方法定义中,方法头不正确的是(D)。

A)publicintx(){...}

B)publicstaticintx(doubley){...}

C)voidx(doubled){...}

D)publicstaticx(doublea){...}

6.在某个类中存在一个方法:

voidgetSort(intx),以下能作为这个方法的重载的声明的是(C)。

A)publicgetSort(floatx)B)intgetSort(inty)

C)doublegetSort(intx,inty)D)voidget(intx,inty)

7.在某个类中存在一个方法:

voidsort(intx),以下不能作为这个方法的重载的声明的是(B)。

A)publicfloatsort(floatx)B)intsort(inty)

C)doublesort(intx,inty)D)voidsort(doubley)

8.为了区分类中重载的同名的不同方法,要求(A)。

A)采用不同的形式参数列表B)返回值类型不同

C)调用时用类名或对象名做前缀D)参数名不同

一、选择题

1定义类头时,不可能用到的关键字是(B)。

A)classB)privateC)extendsD)public

2.下列类定义中,不正确的是(C)。

A)classx{....}

B)classxextendsy{....}

C)staticclassximplementsy1,y2{....}

D)publicclassxextendsApplet{....}

3.下列类头定义中,错误的是(A)。

A)publicxextendsy{...}

B)publicclassxextendsy{...}

C)classxextendsyimplementsy1{...}

D)classx{...}

.设A为已定义的类名,下列声明A类的对象a的语句中正确的是(D)。

A)floatAa;B)publicAa=A();

C)Aa=newint();D)staticAa=newA();

5.设A为已定义的类名,下列声明A类的对象a的语句中正确的是(A)。

A)publicAa=newA();B)publicAa=A();

C)Aa=newclass();D)aA;

6.设X、Y均为已定义的类名,下列声明类X的对象x1的语句中正确的是(C)。

A)publicXx1=newY();B)Xx1=X();

C)Xx1=newX();D)intXx1;

7.设X、Y为已定义的类名,下列声明X类的对象x1的语句中正确的是(A)。

A)staticXx1;B)publicXx1=newX(int123);

C)Yx1;D)Xx1=X();

8.通过类MyClass中的不含参数的构造方法,生成该类的一个对象obj,可通过以下语句实现:

_______________________________。

(MyClassobj=newMyClass();)

9.设i,j为类X中定义的int型变量名,下列X类的构造方法中不正确的是(A)。

A)voidX(intk){i=k;}B)X(intk){i=k;}

C)X(intm,intn){i=m;j=n;}D)X(){i=0;j=0;}

10.有一个类A,以下为其构造方法的声明,其中正确的是(A)。

A)publicA(intx){...}B)staticA(intx){...}

C)publica(intx){...}D)voidA(intx){...}

11.有一个类A,以下为其构造方法的声明,其中正确的是(B)。

A)voidA(intx){...}B)A(intx){...}

C)a(intx){...}D)voida(intx){...}

12.设i、j、k为类X中定义的int型变量名,下列类X的构造方法中不正确的是(B)。

A)X(intm){...}B)voidX(intm){...}

C)X(intm,intn){...}D)X(inth,intm,intn){...}

13.设i,j为类X中定义的double型变量名,下列X类的构造方法中不正确的是(A)。

A)doubleX(doublek){i=k;returni;}C)X(){i=6;j=8;}

B)X(doublem,doublen){i=m;j=n;}D)X(doublek){i

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

当前位置:首页 > 小学教育 > 数学

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

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