java上机作业题以及部分答案

java上机作业题以及部分答案
java上机作业题以及部分答案

第11题编程序求[200,M]上的所有闰年之和(10分)

请编程序求[200,M]中的所有闰年之和。

其中200

由历法可知,4年设一闰,但每100年少一个闰年,即能被4整除但不能被100整除的年份为闰年;每400年又增加一个闰年,即能被400整除的年份也为闰年。

输入格式

输入1个整数M。

输出格式

[200,M]中的所有闰年之和。

样例1输入:

208

样例1输出:

412

import java.util.*;

publicclass Main {

publicstaticvoid main(String[] args) {

// TODO Auto-generated method stub

Scanner sc=new Scanner(System.in);

int m=sc.nextInt();

int sum=0;

for(int i=200;i<=m;i++)

{

if( (i%4==0 &&i%100!=0) || (i%400==0) ){

sum+=i;

}

}

System.out.println(sum);

}

}

第12题编程:求n个实数中的最大数(10分)

请编写程序:输入n个实数(double型),求这n个实数中的最大数,然后输出该数.

输入格式

n

n个用空格分隔开的实数。

输出格式

输出一个实数。

样例输入

4

2.9 20 8.1 9.4

样例输出

20.0

import java.util.*;

publicclass Main {

publicstaticvoid main(String[] args) { // TODO Auto-generated method stub

Scanner sc=new Scanner(System.in);

int n=sc.nextInt();

double[] b=newdouble[n];

for (int i=0;i

{

b[i]=sc.nextDouble();

}

double max = b[0];

for (int k=0;k

{

if(b[k]>max)

max=b[k];

}

System.out.println(max);

}

}

第13题编程:求n个整数之积(10分)编译通过结果不对

请编写程序:输入n个整数(int型),求这n个整数之积,然后输出该数.

其中:1<=n<=15,每个整数的绝对值<=12。

输入格式

n

n个用空格分隔开的整数。

输出格式

输出一个积(整数)。

样例输入

4

2 1 8 9

样例输出

144

import java.util.*;

publicclass Main {

publicstaticvoid main(String[] args) { // TODO Auto-generated method stub

Scanner sc=new Scanner(System.in);

int n=sc.nextInt();

int[] b=newint[n];

for (int i=0;i

{

b[i]=sc.nextInt();

}

int m=1;

for (int k=0;k

{

m*=b[k];

}

System.out.println(m);

}

}

第14题编程:n个整数的逆序输出(10分)

请编写程序:对输入的n个整数进行逆序并输出.

输入格式

n

n个用空格分隔开的整数。

输出格式

逆序(n个用一个空格分隔开的整数)。

样例输入

3

1 3 2

样例输出

2 3 1

注意: 2 3 1 中间只有一个空格, 尾部1的后面一个空格

import java.util.*;

publicclass Main {

publicstaticvoid main(String[] args) { // TODO Auto-generated method stub

Scanner sc=new Scanner(System.in);

int n=sc.nextInt();

int[] b=newint[n];

for (int i=0;i

{

b[i]=sc.nextInt();

}

for (int i=n-1;i>=0;i--) //逆序输出

{

System.out.print(b[i]+"");

}

}

}

第15题填写代码. Point类例子(1)(10分)

下面程序是Point类的基本操作例子.

请将下面程序的【代码】替换为Java程序代码,使程序运行正确。

文件Main.java

import java.util.Scanner;

publicclass Main {

publicstaticvoid main(String args[]) {

// TODO Auto-generated method stub

Scanner in = new Scanner(System.in);

int n = in.nextInt();

Point pt = new Point(1, n);// 创建对象

System.out.println("pt.x=" + pt.x);// 取pt.x = 5;// 修改

System.out.println("pt.x=" + pt.x); pt.move(3, 3);// 移动

System.out.println("pt.x=" + pt.x);

System.out.println("pt.y=" + pt.y);

Point pt2 = new Point();// 声明对象并new System.out.println("pt2.x=" + pt2.x); pt2 = new Point(9, 2);

System.out.println("pt2.x=" + pt2.x); }

}

class Point {

int x, y;// 成员变量,属性

public Point() {// 无参构造方法

x = 0;

y = 0;

}

public Point(int ix, int iy) {// 有参构造方法

x = ix;

y = iy;

}

publicvoid move(int ix, int iy) {// 方法

x += ix;// x=x+ix

y += iy;

}

}

下面程序是类的基本操作简单例子.

请将下面程序的【代码】替换为Java程序代码,使程序运行正确。

文件Main.java

publicclass Main {

publicstaticvoid main (String args[ ]) {

System.out.println("教学活动从教室开始");//命令行窗口输出"教学活动从教室开始"

Teacher zhang = new Teacher();

Student jiang = new Student();//创建对象

zhang.introduceSelf();

jiang.introduceSelf(); //调用它的方法

}

}

class Teacher {

void introduceSelf() {

System.out.println("我是李老师");//命令行窗口输出"我是李老师"

}

}

class Student {

void introduceSelf() {

System.out.println("我是学生,名字是:奖励");//命令行窗口输出"我是学生,名字是:奖励"

}

}

下面程序构造一个类来描述屏幕上的一个点,该类的构成包括点的x 和y 两个坐标,以及一些对点进行的操作,包括:取得点的坐标值,对点的坐标进行赋值,编写应用程序生成该类的对象并对其进行操作。

请将下面程序的【代码】替换为Java程序代码,使程序运行正确。

文件Main.java

publicclass Main {

publicstaticvoid main(String[] args) {

Point Point1 = new Point(3, 4);

System.out.println("Point1:" + "(" +

Point1.x + "," + Point1.y + ")");

Point Point2 = Point1.getPoint();

System.out.println("Point2:" + "(" +

Point2.x + "," + Point2.y + ")");

Point Point3 = new Point(5, 6);

Point1.setPoint(Point3);

System.out.println("Point1:" + "(" +

Point1.x + "," + Point1.y + ")");

}

}

class Point {

int x, y;

public Point(int x,int y) {

this.x = x;

this.y = y;

}

public Point getPoint() {

Point tempPoint = new Point(x, y);

return tempPoint;

}

publicvoid setPoint(Point point) {

this.x = point.x;

this.y = point.y;

}

}

下面程序构造一个类来描述屏幕上的一个点,该类的构成包括点的x 和y 两个坐标,以及一些对点进行的操作,包括:取得点的坐标值,对点的坐标进行赋值,编写应用程序生成该类的对象并对其进行操作。

请将下面程序的【代码】替换为Java程序代码,使程序运行正确。

文件Main.java

publicclass Main {

publicstaticvoid main(String[] args) {

// TODO Auto-generated method stub

Point origin = new Point(10, 10);

origin.getPoint();

origin.setPoint(20, 20);

origin.getPoint();

}

}

class Point {

privateint x;

privateint y;

public Point(int x, int y) {

this.x = x;

this.y = y;

}

publicvoid setPoint(int x1, int y1) {

x = x1;

y = y1;

}

publicvoid getPoint() {

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

}

}

第19题编写. 计算某日是星期几(10分)

下面程序计算某日是星期几。

此题的上机步骤是:

1) 建立一个Java项目,名称可以按题号取名;

2) 建立一个类, 类的名称为Main。这一点非常重要;

3) 按要求编写代码;

4) 提交代码,注意题号要一致。

输入:

以空格分隔的日期,形式为YYYY MM DD

输出:

星期=n, 这里n是数字

The Main class is end.

样例输入:

1990 2 12

样例输出:

星期=1

The Main class is end.

懒得写了

第22题编写部分代码. 按面向对象要求编程在Employee加入身份证(10分)结果不对(工资有问题???

下面程序在Employee类中加入身份证信息,但类Employee中部分代码缺失.请编写程序代码,使程序运行正确。

具体要求, 修改Employee中5个参数的构造器为6个参数的构造器;缺少一个名称为getID()的方法.需要加入.

文件Main.java

import java.util.*;

publicclass Main {

publicstaticvoid main(String args[]) {

Scanner reader = new Scanner(System.in);

String name=reader.nextLine();

String ID=reader.nextLine();

int salary= reader.nextInt();

int year = reader.nextInt();

int month=reader.nextInt();

int day=reader.nextInt();

Employee e = new Employee(name,ID,salary,year,month,day);

e.raiseSalary(6);

System.out.println("姓名:"+e. getName()+ " 身份证:" +e.getID()+" 工资:"+

e.getSalary());

System.out.println("The Main class is end.");

}

}

class Employee {

private String name;//私有域,姓名

private String ID;//私有域,身份证

privatedouble salary;//私有域,工资

private Date hireDay; //私有域,录用日期

//构造方法

public Employee(String n,String i, double s, int year, int month, int day)

{

name = n;//参数,(局部)变量

ID = i;

salary = s;//参数, (局部)变量

GregorianCalendar calendar = new GregorianCalendar(year, month - 1, day);

// GregorianCalendar uses 0 for January(1月份是0)

hireDay = calendar.getTime();

}

public String getName() {

return name;

}

public String getID() {

return ID;

}

publicdouble getSalary() {

return salary;

}

public Date getHireDay() {

return hireDay;

}

//"涨工资"计算

publicvoid raiseSalary(double byPercent) {

double raise = salary * byPercent / 100; salary += raise;

}

}

输入:

姓名

身份证

工资

以空格分隔的日期,形式为YYYY MM DD

输出:

姓名:xxx 身份证:yyyyy 工资:d 这里xxx和yyyyy是字符串,d是double数The Main class is end.

样例输入:

Romeo

430502************

50000

2014 7 11

样例输出:

姓名:Romeo 身份证:430502************ 工资:52500.0

The Main class is end.

第23题代码填空. 通过类完成加法运算(10分)

下列Java应用程序是用户从键盘输入个人信息,然后程序将个人信息输出。

请按程序实现要求,将下面程序的【代码】替换为Java程序代码。

文件Main.java

import java.util.Scanner;

publicclass Main {

publicstaticvoid main(String[] args) { System.out.println(Plus.add(5));//显示5+2的结果Scanner reader=new Scanner(System.in);

double y=reader.nextDouble();

System.out.println(Plus.add(y));//显示1+y的结果Plus aPlus=new Plus(3,4);

System.out.println(aPlus.add());//显示3+4的结果}

}

class Plus{

staticint a=1,b=2;//域

int x,y;

public Plus() {

x=0;y=0;

}

public Plus(int x, int y) {

this.x = x;

this.y = y;

}

publicstaticint add(int x){

return(x+b);

}

publicint add(){

return(x+y);

}

publicstaticdouble add(double y){

return(a+y);

}

publicstaticint add(int x,int y){

return (x+y);

}

}

第24题填写代码,以Point类为例的类继承(10分)

以下程序是有关类继承的例子,请将下面程序的【代码】替换为Java程序代码,使程序运行正确。文件Main.java

import java.util.Scanner;

class Point {

publicint x, y;//域(成员属性)

//无参构造器(方法)

public Point() {

x = 0;

y = 0;

}

// 有参构造器(方法)

public Point(int x ,int y) {

this.x = x;

this.y = y;

}

//成员方法

protectedvoid move(int ix ,int iy) {

x += ix;

y += iy;

}

}

class Son extends Point{

privateint x,y;//隐藏父亲的x,y

//无参

public Son(){

this.x=0;

this.y=0;

}

//有参

public Son(int x,int y){

this.x=x;

this.y=y;

}

publicint getX() {

return x;

}

publicint getY() {

return y;

}

}

class Son1 extends Point {

public Son1(){

//this.x=0;

//this.y=0;

super();//调用父类的构造器(方法)Point()

}

//有参

public Son1(int x,int y){

//this.x=x;

}

publicvoid move(int ix,int iy){

super.move(ix, iy);//调用父类的move(...)

}

}

publicclass Main {

/**

* @param args

*/

publicstaticvoid main(String[] args) {

// TODO Auto-generated method stub

Point pt=new Point();//声明对象变量,创建(实例化)

pt.x=1;//pt中x赋值1

System.out.println("pt.x="+pt.x+"\npt.y="+pt.y);

Son son=new Son(1,2);

Son1 son1=new Son1();

son1.x=1;

son1.move(2, 3);//继承

System.out.println("son1.x="+ son1.x+"\nson1.y="+ son1.y); son.move(2, 3);//继承

System.out.println("son.x="+ son.getX());//显示son中x的值}

}

此题的上机步骤是:

1) 建立一个Java项目,名称可以按题号取名;

2) 建立一个类, 类的名称为Main。这一点非常重要;

3) 填代码;

4) 提交代码,注意题号要一致。

第25题填写代码,以Employee类为例的静态域和静态方法(10分)

以下程序是有关静态域和静态方法的例子,请将下面程序的【代码】替换为Java程序代码,使程序运行正确。

文件Main.java

import java.util.Scanner;

publicclass Main

{

publicstaticvoid main(String[] args)

{

Employee[] staff = new Employee[3];

staff[0] = new Employee("Tom", 40000);

staff[1] = new Employee("Dick", 60000);

staff[2] = new Employee("Harry", 65000);

Scanner reader=new Scanner(System.in);

for (Employee e: staff)

{

int n=reader.nextInt();

e.setId(n);

System.out.println("name="+ e.getName() + ",id="+ e.getId() + ",salary=" + e.getSalary());

}

int n = Employee.getNextId(); // calls static method

System.out.println("Next available id=" + n);

System.out.println("The Main class is end.");

}

}

class Employee

{

privatestaticint nextId = 1;

private String name;

privatedouble salary;

privateint id;

public Employee(String n, double s)

{

name = n;

salary = s;

id = 0;

}

public String getName()

{

return name;

}

publicdouble getSalary()

{

return salary;

}

publicint getId()

{

return id;

}

publicvoid setId(int n)

{

id = nextId; // set id to next available id nextId+=n;

}

publicstaticint getNextId() //静态方法

{

return nextId; // returns static field

}

}

输入:

n个数

输出:

按程序运行结果

The Main class is end.

样例输入:

3 4 6

样例输出:

name=Tom,id=1,salary=40000.0

name=Dick,id=4,salary=60000.0

name=Harry,id=8,salary=65000.0

Next available id=14

The Main class is end.

第26题填写代码。运用继承进行两个银行存款计算利息的例子.(10分)

下列Java应用程序输出银行在利息方面的信息。

请将下面程序的【代码】替换为Java程序代码,使程序运行正确。

文件Main.java

class Bank {

int savedMoney;

int year;

double interest;

double interestRate = 0.29;

publicdouble computerInterest() {

interest=year*interestRate*savedMoney;

return interest;//返回利息

}

publicvoid setInterestRate(double rate) {

interestRate = rate;

}

}

class ConstructionBank extends Bank {

double year;

publicdouble computerInterest() {

super.year=(int)year;

double r = year-(int)year;

int day=(int)(r*1000);

double yearInterest = https://www.360docs.net/doc/ad14782943.html,puterInterest();//super调用隐藏的computerInterest()方法

double dayInterest = day*0.0001*savedMoney;

interest= yearInterest+dayInterest;

System.out.printf("%d元存在建设银行%d年零%d天的利息:%f元\n", savedMoney,super.year,day,interest);

return interest;

}

}

class BankOfDalian extends Bank { //继承

double year;

publicdouble computerInterest() {

super.year=(int)year;

double r = year-(int)year;

int day=(int)(r*1000);

double yearInterest = https://www.360docs.net/doc/ad14782943.html,puterInterest();// super调用隐藏的computerInterest()方法

double dayInterest = day*0.00012*savedMoney;

interest= yearInterest+dayInterest;

System.out.printf("%d元存在大连银行%d年零%d天的利息:%f元\n",

savedMoney,super.year,day,interest);

return interest;

}

}

publicclass Main {

publicstaticvoid main(String args[]) {

int amount=8000;

ConstructionBank bank1 = new ConstructionBank();

bank1.savedMoney = amount;

bank1.year = 8.236;

bank1.setInterestRate(0.035);

double interest1 = https://www.360docs.net/doc/ad14782943.html,puterInterest();//计算利息

BankOfDalian bank2 = new BankOfDalian();

bank2.savedMoney = amount;

bank2.year = 8.236;

bank2.setInterestRate(0.035);

double interest2=https://www.360docs.net/doc/ad14782943.html,puterInterest();//计算利息

System.out.printf("两个银行利息相差%f元\n",interest2-interest1); }

}

Java上机练习题

Java 复习题 第一章 1、分别用Java应用程序和Java小程序编写程序:在屏幕上输出“Hello,欢迎来到精彩的 Java世界!”。 程序:①应用程序:HelloWorld1.java ②小程序:HelloWorld.java和A.htm Java 应用程序: 《HelloWorld1.java》 public class HelloWorld1{ public static void main(String[] args){ System.out.println("Hello,欢迎来到精彩的Java世界!"); } } Java 小程序: 《HelloWorld.java》 import java.applet.Applet; import java.awt.Graphics; public class HelloWorld extends Applet{ public void paint(Graphics g){ g.drawString("Hello,欢迎来到精彩的Java世界!",2,20); } } 《A.htm》 我的第一个JAVA Applet程序 第二章 1、26页案例3:TriangleArea.java(三角形面积) 编写一个java程序,已知三角形三边边长,求三角形面积。要求三条边长从控制台输入。其中4,3,6分别代表三角形的三条边。 《TriangleArea.java》 public class TriangleArea{ public static void main(String[] args){ double a=Double.parseDouble(args[0]); double b=Double.parseDouble(args[1]); double c=Double.parseDouble(args[2]); if(a+b<=c||a+c<=b||b+c<=a)

2010年9月全国计算机等级考试二级JAVA真题及答案

2010年9月全国计算机等级考试二级JA V A真题及答案 一、选择题(每小题2分,共70分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。 (1)下列叙述中正确的是 A)线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的 B)线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构 C)线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构 D)上述三种说法都不对 (2)下列叙述中正确的是 A)在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化 B)在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化 C)在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化 D)上述三种说法都不对 (3)软件测试的目的是 A)评估软件可靠性B)发现并改正程序中的错误 C)改正程序中的错误D)发现程序中的错误 (4)下面描述中,不属于软件危机表现的是 A)软件过程不规范B)软件开发生产率低 C)软件质量难以控制D)软件成本不断提高 (5)软件生命周期是指 A)软件产品从提出、实现、使用维护到停止使用退役的过程 B)软件从需求分析、设计、实现到测试完成的过程 C)软件的开发过程 D)软件的运行维护过程 (6)面向对象方法中,继承是指 A)一组对象所具有的相似性质 B)一个对象具有另一个对象的性质 C)各对象之间的共同性质 D)类之间共享属性和操作的机制 (7)层次型、网状型和关系型数据库划分原则是 A)记录长度 B)文件的大小 C)联系的复杂程度 D)数据之间的联系方式 (8)一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员、与实体计

java上机练习题

要求:代码规范,代码风格,思路正确,功能实现 1、设计一个能随机产生100个大写英文字母的方法,在该方法中统计产生了多少元音字母,并输出这个数字。 2、编写一个矩形类Rect,包含: 两个protected属性:矩形的宽width;矩形的高height。 两个构造器方法: (1)一个带有两个参数的构造器方法,用于将width和height属性初化; (2)一个不带参数的构造器,将矩形初始化为宽和高都为10。 两个方法: (1 求矩形面积的方法area() (2 求矩形周长的方法perimeter() 4.编写一个Java源程序,在程序中建立一个含10个整型(int)元素的一维数组,对数组中的每个元素赋值,然后按下标的逆序输出。 5. 设计一个圆类(Circle),将圆的位置(圆心坐标和半径)作为属性(提供任意圆的设置),并能计算圆的面积。 Circle类必须满足以下要求: (1) 圆类Circle 的属性有: cPoint_x : int型,代表圆心横坐标。 cPoint_y : int型,代表圆心纵坐标。 cRadius: double型,代表圆的半径。 cPI: double型,最终静态变量初值为3.14,代表圆的圆周率。 cArea: double型,代表圆的面积。 (2) 圆类Circle 的方法有: Circle ( ) : 构造函数,将圆的圆心置坐标原点,半径置1。 Circle ( int x , int y, double r) : 构造函数,形参 r 为半径的初值,x为横坐标的初值,y为纵坐标的初值。 double cAreaCount() : 计算当前圆类对象的面积并赋值给Circle类的cArea属性,返回cArea的值给此方法的调用者。 String toString( ) : 把当前圆类对象的圆心坐标、半径以及面积组合成“圆心为(x, y)半径为r的圆的面积为cA”字符串形式,其中x、 y、r和cA分别为横坐标、纵坐标、半径和面积的数据。 7、猜数游戏 随机生成一个数 输入一个数 如果比随机生成的数大,显示“猜错了,比这个数小” 如果比随机生成的数小,显示“猜错了,比这个数大” 如果相等,显示“恭喜你,答对了” 8、写一个彩票程序

2020年计算机二级考试Java练习题及答案(3)

2020年计算机二级考试Java练习题及答案(3) 1[简答题]本题中,在下画线上填写代码,指定变量b为字节型,变量f为单精度实型,变量l为64位整型。 public class javal{ public static void main(String[-]args){ b=49; f=8.9f; l=0xfedl; System.out.println("b="+b); System.out.println("f="+f): System.OUt.println("l="+1); } } 参考解析: 第1处:byte 第2处:float 第3处:long 【解析】本题考查的是数据类型。byte为字节型;float为单精度实型;long为长整型。 3[单选题] 为使下列代码正常运行,应该在下画线处填入的选项是( )。

ObjectInputStream In= new (new FilelnputStream("employee. doc")); Employee[]newstaff=(Employee[])in.readObject (); In.close(); A.Reader B.InputStream C.Objectlnput D.ObjectlnputStream 参考答案:D 参考解析:ObjectlnputStream类和ObjectOutputStream类分列 是InputStream类和OutputStream类的子类。ObjectlnputStream类 和ObjectOutputStream类创建的对象被称为对象输入流和对象输出流。对象输入流使用readObject()方法读取一个对象到程序中。 4[单选题] 为使下列代码正常运行,应该在下画线处填入的选项 是( )。 abstract class person{ public Person(String n){ name=n: } Public String getDescription(); public String getName(){ return name; }

java程序设计试题库

《Java语言程序设计基础教程》 练习思考题参考答案 第1章Java程序设计概述 1、1单项选择题 1.编译Java Application源文件将产生相应得字节码文件,扩展名就是什么 A、、java ???? B、、class ?C、、html??? D、、exe 解答:B 2.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中“一次编 译,随处运行”得特点. ?A、简单性????B、平台无关性 C、面向对象性???? D、安全性 解答:B 3.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中并行机制得 特点。 ?A、多线程???B、平台无关性 C、面向对象性??? D、安全性 解答:A 4。在Java语言中,下列哪些语句关于内存回收得说明就是正确得? ?A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存; C.内存回收程序允许程序员直接释放内存; D.内存回收程序可以在指定得时间释放内存对象 解答:B 5.一个Java源文件中最多只能有多少个public类。 ?A、1个?B、2个

C、3个? D、任意多个 解答:A 6。下面哪一个不就是Java语言所具有得特点。 A、没有全局变量,在类得定义外部没有任何得变量定义; ?B、不直接支持指针操作,而使用更安全得引用类型; C、支持子类对父类得多继承; D、具有自动垃圾收集功能; 解答:C 7。下面哪一个不就是Java开发工具包JDK得组成部分. ?A、Java得编译器; B、Java得解释器;? ?C、Java得API继承类库; ?D、Eclipse开发工具; 解答:C 8。JDK提供得编译器就是()。 ?A、java、exe???B、javac、exe C、javap、exe??? D、javaw、exe 解答:B 9。作为Java应用程序入口得main方法,其声明格式可以就是() A、public voidmain(String[]args) B、public static void main(String []args) C、public static void Main(String* args) D、public int main(String []args) 解答:B 10.下列说法正确得就是( A ) A、JAVA程序得main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序得main方法中如果只有一条语句,可以不用{}(大括号)括起来 11。下列哪些语句关于Java内存回收得说明就是正确得? ( B) A、程序员必须创建一个线程来释放内存

JAVA语言程序设计期末考试试题及答案

1234124JAVA语言程序设计考试试题及部分答案 一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( B ) 。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A)0 B) 1 C) 2 D) 3 2.设i 、j 为int 型变量名, a 为int 型数组名,以下选项中,正确的赋值语句是( B ) 。 A)i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是(B )。 A)多重的B) 单重的C) 线程的D) 不能继承 4.设有定义int i = 6 ; ,则执行以下语句后,i 的值为( C ) 。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( C ) 。 A) interface B) package C) extends D) class 6.若已定义byte[ ] x= {11,22,33,-66} ; 其中O W k<3,则对x数组元素错误的引用是(C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0] 7.下列语句序列执行后, ch1 的值是( B ) 。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B

常见的Java上机面试题

常见的Java上机面试题 在程序员面试中,主要的考试形式分为笔试和上机编程考试两部分。笔试主要考查面试者的基础是否牢固;上机考试主要考查面试者的实际开发能力和技术技巧。 上机编程考试,要求面试者能够根据题目的要求,使用一种编程工具,编写全部代码并调试运行。这主要是考查面试者代码书写和编程的熟练程度。值得注意的是,这类面试题要求能够正确运行,往往要求面试者使用比较原始的JDK编译方式也就是使用DOS命令提示符,而不是提供Eclipse或者JBuilder等快速开发环境。本章将经常出现的上机编程题进行分类,希望能够给读者带来帮助和启示。 17.1 Java基础编程试题(1) 在上机编程类的面试题中,大部分涉及基础编程,例如算法、语法、常用的类等知识点。 面试题1 怎样截取字符串 考题题干 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF"6,应该输出"我ABC",而不是"我ABC+汉的半个"。 试题分析 本面试题容易产生困惑的是中文字符和英文字符,在这里需要考虑汉字和英文字符的占用字节数问题,中文字符占两个字节,英文字符占一个字节,理解了这个,就很容易完成本题了。 参考答案 具体代码实现如下: 1.package core_java; 2.import java.util.Scanner; 3.public class InterceptionStr { 4.static String ss; //要进行截取操作的字符串 5.static int n; //截取的字符串的字节数 6.public static void main(String[] args) { 7. System.out.println("请输入字符串:"); 8. Scanner scStr = new Scanner(System.in); //从键盘获取字符串 9. ss = scStr.next(); // 将Scanner对象中的内容以字符串的形式取出来 10. System.out.println("请输入字节数:"); 11. Scanner scByte = new Scanner(System.in); //从键盘获取字符串 12. n = scByte.nextInt(); //将Scanner对象中的内容以数值的形式取出来

Java基础笔试机试测试题(带答案)

Java基础考试题 班级:__________ 姓名:___________ 日期:_____________ 一、笔试(45题,每题2分) 1) 分析下面的Java程序段,编译运行后的输出结果是()。 public class Test { public static void changeString(StringBuffer sb) { sb.append("stringbuffer2"); } public static void main(String[] args) { StringBuffer sb = new StringBuffer("stringbuffer1"); changeString(sb); System.out.println("sb = " + sb.toString()); } } A. sb = stringbuffer2stringbuffer1 B. sb = stringbuffer1 C. sb = stringbuffer2 D. sb = stringbuffer1stringbuffer2 2) 在Java中,包有多种用途,但不包含()。 A. 将类组合成较小的单元,便于使用 B. 有助于避免命名冲突 C. 有助于提高运行效率 D. 允许在更广的范围内保护类、数据和方法 3) 在Java中,如果要在字符串类型s="java" 中,得到字母'v' 出现的位置,选()语句。 A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v'); 4)下列代码运行后,变量 c 的值是()。 int a=15,b=10; double c=a/b; a) 1.5 b) 1.0 c) 1 d) 0 5)main 方法如下所示,该程序的运行结果是()。 public static void main(String [] args){ int i=0; System.out.print(i++); } a) 输出0 b) 输出1 c) 编译错误d) 运行时出现异常

二级java考试真题(2)

14 1. public class Java_1{ public static void main(String[] args){ //*********Found******** String[] awt = new ______[3]; awt[0] = "Abstract"; awt[1] = "Window"; awt[2] = "Tool kit"; for (int i = 0; i < 3; i++) //*********Found******** System.out.println(______); } } 1)String 2)填"awt[i]" 2. public class Java_2 implements ActionListener{ Frame f; Button b; TextField tf; public Java_2(){ f = new Frame("Show Date"); //*********Found******** ______(new FlowLayout()); f.setSize(300,100); //注册关闭窗口的监听器 f.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); } }); b = new Button("显示当前日期"); //*********Found******** ______(this); tf = new TextField(30); f.add(b);

非常经典的JAVA编程题全集(50题及答案)

【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少 //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数: 1"); System.out.println("第2个月的兔子对数: 1"); int f1 = 1, f2 = 1, f, M=24; for(int i=3; i<=M; i++) { f = f2; f2 = f1 + f2; f1 = f; System.out.println("第" + i +"个月的兔子对数: "+f2); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 public class lianxi02 { public static void main(String[] args) { int count = 0; for(int i=101; i<200; i+=2) { boolean b = false; for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) { b = false; break; } else { b = true; } } if(b == true) {count ++;System.out.println(i );} } System.out.println( "素数个数是: " + count); } } 【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 public class lianxi03 { public static void main(String[] args) { int b1, b2, b3; for(int m=101; m<1000; m++) {

Java上机题目及答案代码

Java上机实践三 实验题目1 假设字符串s1、s2、s3的定义如下: String s1 = “A String”; String s2 = “A String”; String s3 = s1; 请写出下列表达式的值: s1 == s2 s1 == s3 s1.length() s1.equals(s2) s1.equals(s3) https://www.360docs.net/doc/ad14782943.html,pareTo(s2) https://www.360docs.net/doc/ad14782943.html,pareTo(s3) s1.concat(s3) s1.indexOf(‘t’) https://www.360docs.net/doc/ad14782943.html,stIndexOf(‘t’) 实验目的 (1)熟悉字符串类String。 (2)学习创建类String的对象。 (3)学习使用类String执行字符串操作。 实验步骤 (1)按题目的要求创建String对象s1、s2,并声明对象引用s3指向s1;(2)调用String类的相关方法,执行指定操作并输出结果。 package lab1; public class Showstr { public static void main(String[] args){ String s1 ="A String"; String s2 ="A String"; String s3 = s1; System.out.println(s1 == s2); System.out.println(s1 == s3); System.out.println(s1.length()); System.out.println(s1.equals(s2)); System.out.println(s1.equals(s3)); System.out.println(https://www.360docs.net/doc/ad14782943.html,pareTo(s2)); System.out.println(https://www.360docs.net/doc/ad14782943.html,pareTo(s3)); System.out.println(s1.concat(s3));

Java面向对象编程上机-练习题汇总

【练习题】类的成员变量: 猜数字游戏:一个类A有一个成员变量v,有一个初值100。定义一个类,对A 类的成员变量v进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。 【练习题】类的成员变量: 请定义一个交通工具(Vehicle)的类,其中有: 属性:速度(speed),体积(size)等等 方法:移动(move()),设置速度(setSpeed(int speed)),加速speedUp(),减速speedDown()等等. 最后在测试类Vehicle中的main()中实例化一个交通工具对象,并通过方法给它初始化speed,size的值,并且通过打印出来。另外,调用加速,减速的方法对速度进行改变。 【练习题】类的成员变量与方法、构造方法 在程序中,经常要对时间进行操作,但是并没有时间类型的数据。那么,我们可以自己实现一个时间类,来满足程序中的需要。 定义名为MyTime的类,其中应有三个整型成员:时(hour),分(minute),秒(second),为了保证数据的安全性,这三个成员变量应声明为私有。 为MyTime类定义构造方法,以方便创建对象时初始化成员变量。 再定义diaplay方法,用于将时间信息打印出来。 为MyTime类添加以下方法: addSecond(int sec) addMinute(int min) addHour(int hou) subSecond(int sec) subMinute(int min) subHour(int hou) 分别对时、分、秒进行加减运算。 【练习题】构造方法 编写Java程序,模拟简单的计算器。 定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。编写构造方法,赋予n1和n2初始值,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等公有成员方法,分别对两个成员变量执行加、减、乘、除的运算。 在main方法中创建Number类的对象,调用各个方法,并显示计算结果。 【练习题】构造方法: 编写Java程序,用于显示人的姓名和年龄。 定义一个人类(Person),该类中应该有两个私有属性,姓名(name)和年龄(age)。定义构造方法,用来初始化数据成员。再定义显示(display)方法,将姓名和年龄打印出来。

计算机二级java上机真题40道

二级JAVA上机试题汇编 ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※ 第01套: 给定源程序: //计算两个整数的乘法 import javax.swing.JOptionPane; public class Java_1 { public static void main( String args[] ) { int x, y, result; String xVal, yVal; xVal = JOptionPane.showInputDialog( "输入第1个整数:" ); yVal = JOptionPane.showInputDialog( "输入第2个整数:" ); //*********Found******** x = Integer.parseInt( _________xVal_________ ); y = Integer.parseInt( yVal ); result = x * y; //*********Found******** JOptionPane.____________showMessageDialog_____________( null, "两个数的积: " + result ); System.exit( 0 ); } } 解题思路: Java程序修改如下: 第1处:需转换成整数的字符串变量,需填入 xVal 第2处:调用显示信息对话框,需填入 showMessageDialog 2. 简单应用(1小题,计40分) 本题的要: 阅读Java_2.java程序,该程序的功能是将本程序代码打印输出。完成程 序编写并运行。所得结果即本程序代码。 给定源程序: import java.io.*; public class Java_2{ //*********Found******** public static void main(String args[]) _____throws______ Exception{ long filePoint = 0 ; String s; /*类RandomAccessFile可用于随机文件的读写 随机文件的优势:可将每个连续的读写请求定位到文件的任何部分,并且读写请求所获得的数据段在文件中可以相去甚远 */ //新建一个RandomAccessFile的对象file RandomAccessFile file = new RandomAccessFile("Java_2.java","r"); long fileLength = file.length();

Java程序设计试卷及答案

Java程序语言试卷(A) 答题卡: 一题: 1.___________________________________________________________ 2.___________________________________________________________ 3.___________________________________________________________ 4.___________________________________________________________ 5.___________________________________________________________ 6.___________________________________________________________ 四题: 1.___________________________________________________________ 2.___________________________________________________________ 3.___________________________________________________________ 4.___________________________________________________________ 5.___________________________________________________________五题:

Java基础上机题_分类整理版汇总

一、类和对象基础题(共13题) 1.编写一个Java应用程序,该程序中有3个类:Lader、Circle和主类A。具体要求如下:Lader类具有类型为double的上底、下底、高、面积属性,具有返回面积的功能,包括一个构造方法对上底、下底、高进行初始化。Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能,包括一个构造方法对半径进行初始化。主类A用来测试类Lader和类Circle的功能。 2.按要求编写Java应用程序: (1)编写西游记人物类(XiYouJiRenWu) 其中属性有:身高(height),名字(name),武器(weapon) 方法有:显示名字(printName),显示武器(printWeapon) (2)在主类的main方法中创建二个对象:zhuBaJie,sunWuKong。并分别为他们的两个属性(name,weapon)赋值,最后分别调用printName, printWeapon方法显示二个对象的属性值。 3.编写Java应用程序。首先定义一个描述银行账户的Account类,包括成员变量“账号”和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。其次,编写一个主类,在主类中测试Account类的功能。 4.编写Java应用程序。首先,定义一个时钟类——Clock,它包括三个int型 成员变量分别表示时、分、秒,一个构造方法用于对三个成员变量(时、分、秒)进行初始化,还有一个成员方法show()用于显示时钟对象的时间。其次,再定义一个主类——TestClass,在主类的main方法中创建多个时钟类的对象,使用这些对象调用方法show()来显示时钟的时间。 5.编写Java应用程序。首先,定义描述学生的类——Student,包括学号(int)、姓名(String)、年龄(int)等属性;二个方法:Student(int stuNo,String name,int age) 用于对对象的初始化,outPut()用于输出学生信息。其次,再定义一个主类——TestClass,在主类的main方法中创建多个Student类的对象,使用这些对象来测试Student类的功能。 6.编写一个Java应用程序,该应用程序包括2个类:Print类和主类E。Print 类里有一个方法output()功能是输出100 ~ 999之间的所有水仙花数(各位数字的立方和等于这个三位数本身,如: 371 = 33 + 73 + 13。)在主类E的main方法中来测试类Print。 7.编写Java应用程序。首先,定义一个Print类,它有一个方法void output(int

2019年全国计算机二级考试Java试题及答案(4).doc

2019 年全国计算机二级考试Java 试题及答案(4) 1[ 单选题] 下列方法被调用后,一定使调用线程改变当前状态的是( ) 。 A.notify() B.yield() C.sleep() D.isAlive() 参考答案:C 参考解析:线程调用sleep 函数后,使当前线程进入停滞状态。yield 函数可使线程进入可执行状态,排程器从可执行状态的线程中重新排程,调用了yield 函数的线程有可能被马上执行,也有可能不会马上执行。notify 函数从线程等待池中移走任意一个线程,并把它放到锁标志等待池中,其状态仍旧是等待。所以只有sleep 一定会改变线程状态。 2[ 单选题] 如果应用程序要在Applet 上显示输出,则必须重写的方法是( ) 。 A.Graphics.drawstring() B.repaint() C.paint() D.update() 参考答案:C 3[ 单选题] 下列不属于虚拟机执行过程的特点的是( ) 。 A.多线程

B.动态连接 C.异常处理 D.代码安全检查 参考答案:D 参考解析:本题考查虚拟机执行过程的特点。Java 虚拟机是编译器生成的字节码,不用考虑具体的硬件环境,实现一次编写,随处运行,实现其可移植性。虚拟机执行过程的特点有:多线程、动态连接、异常处理。代码安全检查是Java 语言的一个突出特点,但不属于虚拟机执行过程特点。 4[ 单选题] 软件( 程序) 调试的任务是( ) 。 A.诊断和改正程序中的错误 B.尽可能多地发现程序中的错误 C.发现并改正程序中的所有错误 D.确定程序中错误的性质 参考答案:A 参考解析:调试的目的是发现错误或导致程序失效的错误原因,并修改程序以修正错误。调试是测试之后的活动 5[ 单选题] 下列相关接口的说法,准确的是( ) 。 A.接口与抽象类是相同的概念 B.实现一个接口必须实现接口的所有方法 C.接口之间不能有继承关系 D.一个类不可实现多个接口 参考答案:B

大学《java程序设计》考试题库及答案

若有定义int a=2,b=2; 则表达式(a++)+(++b) 的值是( )。 A. 5 监听器接口的方法返回值的类型是()。C. void 在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行()。 D. init() 以下哪个不是Java的原始数据类型() B. Boolean 向Applet传递参数的正确描述是()。C. C. PARAM name="age,value=20" 阅读下列代码; public class Test{ String s="One World One Dream"; public static void main(String args[]){ System.out.println(s); } } 其运行结果是_ C. 编译时出错//除非创建Text类的对象 如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是()。 A. p.add(b,"South"); 编译和运行下面的应用程序,并在命令行界面输入12345 ,则回车后屏幕输出的结果是( )。public class A { public static void main(String args[]) throws IOException{ BufferedReader buf=new BufferedReader( new I nputStreamReader(System.in)); String str=buf.readLine(); int x=Integ er.parseInt(str); System.out.println(x/100); } } B. 123 构造函数何时被调用?() B. 创建对象时 以下哪项可能包含菜单条()。 D. Frame

清华大学出版社 郭克华 Java Web程序设计上机习题答案

Chapter2 Frame、 作者的个人简介 Login、

Please Log In

   Login:
Password:
         
Main、 (Section C) Regiter、

New Member

ID              
Password        
Re-Password     
First Name      
Last Name       
Address         
City            
State          

JAVA程序设计题库

JAVA程序设计题库 第一部分 JAVA语言概论 一、选择题 1. 下列不属于java语言鲁棒性特点的是: A. java能检查程序在变异和运行时的错误 B. java 能运行虚拟机实现跨平台 C. java 自己操纵内存减少了内存出错的可能性 D. java 还实现了真数组,避免了覆盖数据的可能 2. java语言的执行模式是: A. 全编译型 B. 全解释型 C. 半编译和半解释型 D. 同脚本语言的解释模式 3. 下列关于虚拟机说法错误的是: A. 虚拟机可以用软件实现 B. 虚拟机部可以用硬件实现 C. 字节码是虚拟机的机器码 D. 虚拟机把代码程序与各操作系统和硬件分开 4. java语言是1995年由()公司发布的 A. Sun B. Microsoft C. Borland D. Fox Software 5. 下列不是虚拟机执行过程特点的是 A. 双线程 B. 多线程 C. 动态链接 D. 异常处理 6. java以JVM为基础,最下层是移植接口,由适配器和()组成 A. 网卡 B. Java os C. Java基本类 D. Java 应用程序和applet小程序 7. java程序的执行过程中用到一套JDK工具,其中javac.exe指 A. java语言编译器 B. java字节码解释器 C. java文档生成器 D. java类分解器 8. java的API结构中,不属于类库主要包括的核心包的是 A. java包 B. javax C. javadoc包 D. org扩展包 9. 每个java的编译单元可包含多个类或界面,但是每个编译单元最多只能有()类或者界面是公共的 A. 一个 B. 两个

java上机

1-1public class applicationinout1{ public static void main(String[] args) { new FrameInOut();} } class Framinout extends Fram implements ActionListener { Label prompt; TextFild input,out; framInOut() {super("program"); prompt = new Lebel("please input:"); input = new TextField(6); output = new TextField(20);add(prompt);add(input);add(output); setlayout(new FlowLayout()); input.addActionListener(this); setBackground(Color.red); setSize(300,200);setVisible(true); } public void actionperformed(ActionEvent e) { output.setText(input.getText)+"欢迎你"); } 1-2import java.io.*; public class ApplicationCharInOut{ public static void main(string args[]) { char c = ''; System.out.printIn("enter a character :"); try{ c = (char)System.in.read(); }catch(IOException e){} System.out.printIn("you are entered character" + c); } } 2-1import java.awt.*; import java.awt.event.*;//包 public class AppletInOut1{

相关文档
最新文档