java程序设计题库及答案_第1页
java程序设计题库及答案_第2页
java程序设计题库及答案_第3页
java程序设计题库及答案_第4页
java程序设计题库及答案_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

java程序设计题库及答案

Java程序设计作业

1.简答题

(DpublicclassVariables{

staticStringhello="Hello,";〃方法外声明的变量是成

员变量

publicstaticvoidmain(Stringargs[]){〃方法定义中声

明的变量是参数变量Stringname="Bill";〃方法内声明的

变量是局部变量

System,out.println(hello+name+"!");

〃可以引用成员变量、方法参数变量和已经声明过局部变量

)

}

什么是局部变量和成员变量?Hello和name属于什么变量?他

们作用范围,请结合程序进行说明?

答:

局部变量:

(2)importjava.util.*;

publicclassAbsolutelfElse{

publicstaticvoidmain(String[]args){

inti;

Seannerseanner=newSeanner(System,in);

System.out.println("请用键盘输入一个整数,然后单击回车

键:n);

i=scanner.nextInt();

if(i>=0)System.out.println("这个整数的绝对值是:"+i);

else{〃用一对花括号构成语句块

i=-i;

System,out.println(w这个整数的绝对值是:n+i);

)

)

)

程序运行结果是什么?

请用键盘输入一个整数,然后单击回车键:

-65

这个整数的绝对值是:65

(3)publicclassBooleanExpression{

publicstaticvoidmain(String[]args){

inti,j;

floatf;

booleanb;

i=l;j=3;f=l.2f;

b=i==j;System,out.printin("b="+b);〃关系运算符的优先级

高于赋值运算符

b=i<=f;System,out.println("b="+b);

b=(i<=f)&&(f<=j);System,out.println("b="+b);

b=!((i>f)||(f>j));System,out.println("b="+b);

b=(i<=f)||(f<=j);System,out.println("b="+b);

)

)

程序运行结果是什么?

b=false

b=true

b=true

b=true

b=true

(4)publicclassTest7{

publicstaticvoidmain(String[]args){

intsum=0;

for(inti=l;i<=10;i++){

sum=sum+i;

System,out.println(T10之间所有数之和为:"+sum);

}

)

程序运行结果是什么?

「10之间所有数之和为:55

(5)importjava.util.Scanner;

publicclassCheckTest{

publicstaticvoidmain(String[]args){

Scannersc=newSeanner(System,in);

System,out.print("请输入一个整数:");

intnum=sc.nextInt();

if(num%5==0&&num%6==0){

System,out.println(num+”

)

if(num%5==0||num%6==

0){System,out.println(num+”

)

if(num%5==0Anum%6==

0){System,out.println(num+”

)

}

程序运行结果是什么?能被5和6同时整除。「);能被5或6

整除。");

能只被5或只被6整除。");

请输入一个整数:

10

10能被5或6整除。

10能只被5或只被6整除

(6)importjava.util.Scanner;

publicclassScoreGrade{

publicstaticvoidmain(String[]args){

Scannersc=newSeanner(System,in);System,out.print("

请输入成绩:");doublescore=sc.nextDoubleO;

Stringgrade='*";

if(score>100||score<0){

System.out.println("输入的成绩不正确。");

System,exit(0);〃结束程序运行

}elseif(score>=90){

grade="优秀";

}elseif(score>=80){

grade="良好

}elseif(score>=70){grade="中等";

}elseif(score>=60){

grade="及格";

}else{

grade="不及格";

)

System,out.println("你的成绩为:"+grade);

程序运行结果是什么?

请输入成绩:45

你的成绩为:不及格

请输入成绩:98

你的成绩为:优秀

请输入成绩:63

你的成绩为:及格

2设计题

(i)要求:设计一个程序,要求一次只能输入一个学生学号、

姓名和成绩,然后可以显示该学生学号、姓名、成绩信息,操作

过程如下:

(i)界面i

欢迎进入学生成绩管理系统

请选择您的操作:

1.录入学生成绩信息;

2.显示学生成绩信息;

0.退出;

请输入数字选项(0-2):

(2)选择数据1,开始录入学生学号、姓名和成绩(只能输入

一个学生基本信息)请输入数字选项(0-2):1

请输入学号:

2014001

请输入学生姓名:

zhangsan

请输入成绩:

88

请选择您的操作:

1.录入学生成绩信息;

2.显示学生成绩信息;

0.退出;

请输入数字选项(0-2):

(3)输入2,显示学生成绩:

学生学号信息如下:2014001

学生姓名信息如下:zhangsan

学生成绩信息如下:88

您选择了显示所有学生成绩信息。

请选择您的操作:

1.录入学生成绩信息;

2.显示学生成绩信息;

0.退出;

请输入数字选项(0-2):

(4)对于选择操作输入错误的处理:

例如,输入4后

请选择您的操作:

1.录入学生成绩信息;

2.显示学生成绩信息;

0.退出;

请输入数字选项(0-2):

4

输入错误,请重新输入!

请选择您的操作:

1.录入学生成绩信息;

2.显示学生成绩信息;0.退出;

请输入数字选项(0-2):(5)最后输入0,退出该程序。注:

去年考题

代码如下:

publicclassTestgrade{

publicstaticvoidmain(String[]

intselect;

select=1;

Stringxuehao=

Stringname=intchengji=0;args){

Scannersc=newScanner(System,in);

System,out.printlnO;

System,out.printing

System,out.printing

System,out.printing

II);

);

欢迎进入学生成绩管理系统);System.out.println(w

System,out.printing

);

II);

while(true)

(

System,out.printlnO;

System.out.printin("请选择您的操作:");

System.out.println("1.录入学生成绩信息;");

System.out.println(n2.显示学生成绩信息;");

System,out.println("0.退出;");

System,out.println("请输入数字选项(0-2):");

select=sc.nextInt();

System,out.printlnO;

〃判断输入,0退出

if(select>=0&&select<=2){

switch(select)

case1:

break;

case0:

System,exit(0);

)

)

else

System,out.printIn("输入错误,请重新输入!");

System,out.printin("请输入学号:");

xuehao=sc.next();

System,out.printlnO;

System,out.printin("请输入学生姓名:");

name=sc.next();

System,out.printlnO;

System,out.printIn(n请输入成绩:");

chengji=sc.nextInt();

System,out.printlnO;

break;

case2:

System,out.printIn(f,

System,out.printing

学生学号信息如下:"+xuehao);

学生姓名信息如下:"+name);

System,out.printIn(n学生成绩信息如下:"+chengji);

System,out.printin("您选择了显示所有学生成绩信息);

continue;}

)

)

)

(2)编写一个程序,实现计算1+2+3+……+n的n项和

的功能,n由键盘输入与控制

Scannersc=newScanner(System,in);

System,out.printin("求l-n的和,请输入n的值:");

intsum=0;

intn=sc.nextlnt();

for(inti=1;i<=n;i++){

sum+=i;

}

System,out.println("l~n的和:n+sum);

(3)请输入三角形的底和高,计算该三角形面积。

publicstaticvoidmain(String[]args){

Scannersc=newScanner(System,in);

System.out.printin(”请输入三角形的底:");

doubledi=sc.nextDoubleO;

(4)编写一个程序,计算矩形面积

Seannersc=newSeanner(System,in);

System.out.printin("请输矩形的底:");

doubledi=sc.nextDoubleO;

System,out.printIn(w请输入矩形的高:");

doublegao=sc.nextDoubleO;

doublemj=di*gao;

System.out.printin("矩形的面积是:"+mj);

(5)编写一个程序,计算圆的面积

Scannersc=newScanner(System,in);

System,out.printin("请输圆的半径:");

doublesr=sc.nextDoubleO;

doublepai=3.1415926;

doublemj=pai*(sr*sr);

System,out.printin("圆的面积是:"+mj)

⑹计算平面空间距离的计算公式分别是经sqrt(x*x+y*y)和

sqrt(x*x+y*y+z*z)

⑺已知一元二次方程ax2+bx+e=0,其中a=2,b=7,c=5。

请编写程序,计算出两个实根的值。程

序保存为ExpTest.java。

计算x的平方根,可调用方法:Math,sqrt(x)

来完成。(8)已知圆半径为15,编写程序分别计算圆的周长、

面积和体积,并显示计算结果。程序保存为

ExpTest3.java

(9)设计一个程序,用于判断某个月份的天数。程序保存为

ExpTest4.java(10)

已知函数为y=x;01

编写程序,根据x的值,计算出该函数y的值。程序保存为

ExpTest5.java

(11)某商品每公斤价格13.20,如果顾客购买100公斤及以上

价格可以打9折;如果购买50公斤及以上100公斤以下,价

格打9.5折。请编写程序,计算在不同购买重量时顾客应该付

的金额。程序保存为ExpTest6.java

10

.2

(12)编写程序,求I的值。程序保存为Expdemol.java

i1

(13)编写程序,显示如下乘法表:程序保存为

Expdemo2.java88*8=648*9=72

99*9=81

(14)使用循环程序完成以下图形输出,程序保存为

Expdemo3.java

提示:求根公式:

2

b.b4a

c2a1*1=11*2=21*3=31*8=81*9=9

2*2=42*3=62*4=8

2*9=18

packageaaa;

publicclassggg{

publicstaticvoidmain(String[]args){

intsize=11;

if(size%2==0){

size++;

for(inti=0;i<size/2;i++){

for(intj=size/2;j>i+1;j—){

System,out.print(n");

for(intj=0;j<2*i+1;j++){

);System,out.println("*');

3选择题

(1)Java运行平台包括三个版本,请选择正确的三项:

()A.JavaEEB.JavaME

C.JavaSE

D.Java2E*****

.print(

(2)publicstaticvoidmain方法的参数描述是:()

A.Stringargs[]

B.String[]args

C.Stringsargs[]

D.Stringargs

(3)编译JavaApplication源文件将产生相应的字节码文件,

扩展名为(

)

A..java

B..class

C..html

D..exe

(4)从下面选项中,选择三个有效的标示符:()

A.IDoLikeTheLongNameClass

B.$byte

C.const

D._ok

E.3_case

⑸下面哪一项在java中是非法的标识符?()

A.$user

B.point

C.You&me

D._endline

(6)下列不属于Java保留字的是:()

A.sizeof

B.super

C.abstract

D.break

(7)下面哪些java语句会导致无限循环()。

while(true)i=0;H、while(false)i=1;III、while

(•false)i=0;

A、仅仅IH

B、I和III

C、仅仅I

D、I,II和III

⑻下列整型数据类型中,需要内存空间最少的是()。

A.short

B.Iong

C.int

D.byte

(9)下面代码执行后,正确的输出结果是:()

publicclassExample{

publicstaticvoidmain(Stringargs[1){

int1=0;

do{

System,out.println("Doingitfor1is:"+I);

}while(—1>0);

System,out.println("Finishn);

)

)

A.Doingitfor1is3

B.Doingitfor1is1

C.Doingitfor1is2

D.Doingitfor1is0

E.Doingitfor1is?C1

F.Finish

(10)若有定义inta=l,b=2;那么表达式(a++)+(++b)的值是:

(

)

A.3

B.4

C.5

D.6

(11)若有定义inta=9,b=6;那么a>b的值是:()

A.0

B.1

C.false

D.true

(12)假定有变量定义:intk=7,x=12;那么能使值为3的表达式

是:()

A.x%=(k%=5)

B.x%=(k-k%5)

C.x%=k-k%5

D.(x%=k)-(k%=5)

(13)设x=l,y=2,z=3,则表达式y+=z---/++x

的值是()

B.3.5

A.3

C.javaappfirst.class

(16)JDK安装完成后,主要的命令如

D.javacAppFirst

javac、java等,都存放在根目录的(

A.bin

B.jre(17)Java语言是一种()语言。A.机器B.汇编

C.inelude

D.doc

(18)Java程序的最基本组成单位是()

F面这些标识符哪个是错误的(

F列哪一组运算符的优先级顺序是从高到低排列的(

F面哪个赋值语句不会产生编译错误()

4.下面哪个单词是Java语言的关键字()

A.False

B.FOR

5.执行下面程序后,哪个结论是正确的(

inta,b,c;

a=l;b=3;c=(a+b>3?++a:b++);

A.a的值为2,b的值为3,c的值为1

B.a的值为2,b的值为4,c的值为2

C.a的值为2,b的值为4,c的值为1文案大全

D.a的值为2,b的值为3,c的值为2

C.4

D.5

(14)作为Java应用程序入口的main方法,其声明格式是()

A.publicstaticintmain(Stringargs[])args[])

C.publicvoidmain(Stringargs[1)

(15)下面命令正确的是()

B.publicstaticvoidmain(StringD.publicint

main(Stringargs口)

A.javaAppFirst.java

B.javaAppFirst

)文件夹下

C.面向过程的D.面向对象的

A.函数B.过程C.变量

JavaworldB.sumC.2JavaProgramD.$abc

I、&、!B.&、A、||%、++<、<<、++

A.chara='abc';B.byteb=152;C.floatc=2.0;D.

doubled=2.0;

C.For

D.for

6•设各个变量的定义如下,哪些选项的值为true()

inta=3,b=3;

booleanflag=true;

A.++a==b

B.++a==b++

C.(++a==b)||flagD.(++a==b)&flag

7.表达式(int)6.5/7.5*3的值的类型为()

A.short

B.int

C.double

D.float

8.设a,b,x,y,z均为int型变量,并已赋值,下列表达式的

结果属于非逻辑值的是()

A.x>y&&b<a<p=n"data-fi1tered="fi1teredf,

style=Mmargin:Opx;padding:Opx;”>

B.-z>x-y

C.y==++x

D.y+x*x++

9.下面语句输出的结果为()

Syste.out.println(5A2);

A.6

B.7

C.10

D.25

10.对下面的语句执行完后正确的说法是:()

intc='c'/3;

System,out.println(c);

A.输出结果为21

B.输出结果为22

C.输出结果为32

D.输出结果为33

11.以下选项中变量a已定义类型,合法的赋值语句为()

A.a=int(y);

B.a==1;

C.a=a+仁3;

D.++a;

12.执行下列程序段后,ch,x,y的值正确的是:()

intx=3,y=4;

booleanch;

ch=x

A.true,3,4

B.true,4,3

C.false,3,4

D.false,4,3

13.下列标识符中,正确的是o

A、l_Back

B、$_Money

C^$-money

D、2-Forward

14-现有一个int类型的整数和一个double类型的浮点数,当

它们之间做了加法运算之后,得到的结果类型应该是_0

A、int类型

double类型

C^float类型

D、long类型

15、以下程序的运行结果为_。

publicclassA{

publicstaticvoidmain(Stringa[]){

intx=2,y=5;

Stringz="5";

System,out.println(x+y);

System,out.println(x+z+"x+z");

System,out.println("x+y="+x+y);

System,out.println("x+z="+(x+z));

)

A.7

B.7

C.25D.7

25x+z7x+z25x+z25x+z

x+y=25x+y=25x+y=7x+y=25

x+z=25x+z=7x+z=25x+z=7

16、设有定义inta=12;则执行a*=12;语句后,a的值为:0

A.144

B.12

C.24D.0

17、下列标识符中,合法的一个是

A.$#@!$

B.$我们$

C.$22$

18、执行下列程序段后,b,x,y的值分别是_o

intx=6,y=8;

booleanb;

b=x>y&&++x==-y;

A.true,6,8

B.false,6,8

C.e,7,719、下列程序运行的结果是_o

publicclassA{

publicstaticvoidmain(Stringargs[]){

intx=7%3;

while(x){

x——;

}

1.下面程序片段输出的是什么()

inta=3,b=l;

if(a=b)Syste.out.println("a="+a);

A.a=l

B.a=3

C.编译错误,没有输出

2.下面语句执行后,x的值为()

System,out.println(x);

)

)

A.0

B.1

C.true

D.编译错误D.2$$2

D.false,7,7D.正常运行,但没有输出

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

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

A.3

B.12

C.15

D.20

3.请看下面的程序代码:

if(x<0){Syste.out.println(afirst");}

elseif(x<20){Syste.out.println(

"second");}else{Syste.out.println("third");)

当程序输出“second”时,x的范围是()

A.x<=0B.x<20&&x>=0C.x>0D.x>=204.请看下面

的程序代码:

switch(n){

case0:Syste.out.println(case1:

intj=3,i=3;

while(—i!=i/j)j=j+2;

“first”);

case2:Syste.out.println("

I»second);break;

default:Syste.out.println("end");

当n为何值时,程序段将输出字符串”

second”(B.以上都可以

5.下列语句执行后,

j的值是()

B.

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

intx=2;

do{x+=x;}while(x<17);

A.4

B.5

C.6

9.下列语句执行后,c的值是()

charc=\0';

for(c='a*;c<*z*;c+=3){

if(c>='e')break;

)

A.'e'

B「f'

C.'g'

D.1h'10.若变量都已经正确说明,则以下程序段输出为()

a=10;b=50;c=30;

if(a>b)a=b;b=c;A.4

B.16

C.327.执行下列语句后,i、j的值是()

inti=l,j=8;

do{

if(i++>—j)

continue;

}while(i<4);

A.i=4,j=5

B.i=5,j=48.下列语句执行后,k的值是()

intj=4,i,k=10;

for(i=2;i!=j;i++)k=k-i;

D.256C.i=5,j=5D.i=5,j=6

c=a;System.out.println(a=+a+b="+b+c=”

+c);

A.a=10

b=50c=10B.a=10b=30c=10C.a=50b=30c=10D.a=50

b=30c=3011•以下程序段输出是()

intx=l,y=0,a=0,b=0;

i=(一a==b++)?---a:++b;

j=a++;k=b;

System,out.println("i="+i+”,j=”

+j+”,k="+k);A.i=2,j=l,k=3B.i=l,j=l,k=2C.

i=4,j=2,k=4D.12.以下程序的输出是()

intx=l,y=0,a=0,b=0;

switch(x){

case1:

switch(y){

case0:a++;break;

case1:b++;break;

}

case2:

a++;break;

case3:

a++;b++;

2-12i=2,j=-l,k=2

System,out.println("a="+a+”,b="+b);20

A.a=l,b=0

B.a=2,b=0

C.a=l,b=lD.a=2,b=2

13.以下程序段输出是()

inti=0,j=0,a=6;

if((++i>0)||(++j>0))a++:

System,out.println(ai="+i+”,j="+j+”,a="+a);

A.i=0,j=0,a=6

B.i=l,j=l,a=7

C.i=l,j=0,a=7D.i=0,j=l,a=7

14、下列程序运行的结果是一。

publicclassA{

publicstaticvoidmain(Stringargs[1){

charc='d';

for(inti=1;i<=4;i++){

switch(i){

case1:

c='a';

System,out.print(c);

break;

case2:

c='b';

System,out.print(c);

break;

case3:

!f

c=c;

System,out.print(c);

default:

System,out.print("!");

)

)

)

)

A.!B.dbc!C.abc!

2-1Java语言所用的字符集中字符是一位。

A.8

B.16

C.32

D.64

2-2下列关于标识符的描述中,正确的是一

A.标识符中可以使用下划线和美元符

B.标识符中可以使用连接符和井号符

C.标识符中大小写字母是无区别的

D.标识符可选用关键字

2-3Java语言和各种分隔符中,非法的是.

A.空白符

B.分号

C.逗号

D.abc!!

D.问号

2-4下列是Java语言中可用的注释,其中错误的是

A.//

B./♦—*1

C/♦*•••♦*/

D/**•••♦/

2-5Java语言中字符型数据的长度是位。

A.8

B.16

C.32

D.64

2-6下列描述的两种数据类型的长度不相等的是

A.字符型和布尔型

B.字节型和布尔型

C.短整型和字符型

D.整型和单精度浮点型

2-7下面是关于Java语言中数据类型的强制转换的描述,其中

错误的是

A.当数据类型从高转换为低时需强制转换

B.强制转换时使用强制转换去处符,形如«类型》)

C.浮点型数据强制转换为整型时,小数部分四舍五入

D.赋值操作中都要采用强制类型转换

2-8下列关于常量的描述中,错误的是一

A.Java语言的常量有5种

B.浮点型数12.456是单精度的

C.布尔型常量只有两个可选值:true和false

D.字符串常量含有结束符'\0'

2-9下列关于定义符号常量的描述中,错误的是一

A.定义符号常量使用关键字const

B.定义符号常量时要赋初值

C.符号常量既可以定义为类成员,又可在方法中定义

D.定义符号常量时必须给出数据类型

2-10下列关于变量的默认值的描述,其中错误的是,o

A.定义变量而没有进行初始化时,该变量具有默认值

B.字符型变量的默认值为换行符

C.布尔型变量的默认值是true

D.变量的默认值是可以被改变的

2-11下列关于变量定义的描述中,正确的是

A.定义变量时至少应指出变量名字和类型

B.定义变量时没有给出初值该变量可能是无意义值

C.定义变量时,同一个类型多个变量间可用逗号分隔

D.定义变量时必须要给变量初始化

2-12下列关于变量作用域的描述,错误的是一。

A.在某个作用域定义的变量,仅在该作用域内是可见的,而在该

作用域外是不可

B.在类中定义的变量的作用域在该类中的方法内可以使用

C.在方法中定义的变量的作用域仅在该方法体内

见的

D.在方法中作用域可嵌套,在嵌套的作用域中可以定义同名变量

2-13下列关于增1(++)减1(一)1运算符的描述中,正确的

A.增1减1运算符都是单目运算符

B.增1减1运算符都具有前缀运算和后缀运算

C.增1减1运算符不会改变变量的值

D.增1减1运算符前缓运算和后缀运算后表达式值是相同的

2-14关于运算符优先级的描述中,错误的是

A.在表达式中,优先级高的运算符先进行计算

B.赋值运算符优先级最高

C.单目运算符优先级高于双目和三目运算符

D.逻辑运算符优先级高于逻辑位运算符

2-15下列关于表达式的描述中,正确的是一。

A.任何表达式都有确定的值和类型

B.算数表达式的类型由第一个操作数的类型决定

C.逻辑表达式的操作数是逻辑型的

D.赋值表达式的类型取决于右值表达式的类型

2-16下列表达式中,非法的是_o

inta=5,b=6;doublec=l.1,d=2.2

A.a+c+++d

B.(a+c)-

C.c«b<p=nndata-filtered=,,filterednstyle=nmargin:Opx;

padding:Opx;">

D.a!=b?c:d

2-18下列关于条件语句的描述中,错误的是

A.If语句可以有多个else子句和elseif子句

B.If语句中可以没有else子句和elseif子句

C.If语句中的〈条件〉可以使用任何表达式

D.If语句的if体、else体内可以有循环语句

2-19下列关于switch语句的描述中,错误的是

A.switch语句中,default子句可以省略

B.switch语句中,case子句的〈语句序列〉中一定含有break

语句

C.switch语句中,case子句和default子句都可以有多个

D.退出switch语句的唯一条件是执行break语句

2-20下列关于循环语句的描述中,错误的是一

A.任何一种循环体内都可以包含一种循环语句

B.循环体可以是空语句,也可以是空

C.循环体内可以出现多个break语句

D.循环语句中,循环体至少被执行一次

2-21下列循环语句的循环次数是一。

inti=5;

do{

System,out.println(i—);

i一;

}while(i!=0);

A.0

B.1

C.5

D.无限

2-22下列循环语句中,循环体被执行的次数为

for(inti=0,j=0;(j!=18)|

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论