JAVA上机题
java机试题及答案
java机试题及答案Java机试题及答案一、选择题1. 在Java中,用哪个关键字可以定义一个类?A. classB. functionC. methodD. type答案:A2. 下列哪个是Java的合法标识符?A. 2classB. class#2C. _classD. class答案:D3. Java中的main方法必须返回什么类型?A. voidB. intC. StringD. Object答案:A4. 在Java中,哪个类提供了基本的数学运算?A. ng.MathB. java.util.MathC. ng.CalculationD. java.util.Calculation答案:A5. 下列哪个是Java的访问修饰符?A. publicB. privateC. protectedD. All of the above答案:D二、简答题1. 请简述Java的垃圾回收机制是什么?答案:Java的垃圾回收机制是一种自动内存管理功能,它周期性地执行,以回收不再使用的对象所占用的内存。
垃圾回收器会跟踪每个对象的引用,当一个对象的引用计数为零时,即没有任何引用指向该对象,垃圾回收器就会在下一次运行时将其内存回收。
2. 什么是Java的多态性?答案:Java的多态性是指允许不同类的对象对同一消息做出响应的能力。
在Java中,多态性主要有两种形式:方法重写(运行时多态)和方法重载(编译时多态)。
方法重写是指子类提供一个与父类中具有相同名称和参数的方法,而方法重载是指在同一个类中定义多个同名方法,但参数类型或个数不同。
三、编程题1. 编写一个Java程序,实现计算两个整数的和。
```javapublic class SumCalculator {public static void main(String[] args) {int num1 = 10;int num2 = 20;int sum = addNumbers(num1, num2);System.out.println("The sum is: " + sum);}public static int addNumbers(int a, int b) {return a + b;}}```2. 编写一个Java程序,实现字符串反转。
java上机题目
上机题1. 如果小明的JA V A成绩大于90分,而且音乐成绩也大于80分,奖励他手机一个;或者JA V A成绩等于100分,音乐成绩大于70分,奖励他汽车一部。
2. 通过键盘输入两个数a,b,如果a能被b整除,或者a加b大于1000,则输出a;否则输出b。
3. 如果中了500万,则输出“恭喜”,否则输出“好运”。
4. 模拟银行取钱,如果输入的密码为“123456”,登录成功,提示”可以取钱“,否则提示”密码错误,请重新输入“。
5. 判定输入的年份是否为闰年。
6. 判断一个数是奇数还是偶数。
7. 根据月份判断天数。
8. 输入一个5位数,把每位上的数相加,求和。
9. 某培训机构2006年培训学员8万人,每年增长25%,请问按此增长速度,到哪一年学员人数会达到20万人?10. 用for循环计算1000以内奇数的和。
11. 计算1—100之内的整数和。
12. 求1—10之内的数相加,达到累加值大于20的当前数。
用break。
13. 求1—100内所有偶数的和。
用continue。
1、import java.util.*;public class guo {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("输入小明的java和音乐成绩:");int javascore = input.nextInt();int musicscore = input.nextInt();if(javascore>90&&musicscore>80){System.out.println("奖励你个手机吧!");}Else if(javascore==100&&musicscore>70){System.out.println("奖励你一部汽车吧!");}}}2、import java.util.*;public class lu {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("a和b");int a = input.nextInt();int b = input.nextInt();if(a%b==0&&a+b>100){System.out.println(a);}Else {System.out.println(b);}}}3、import java.util.*;public class fei {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("是否中了五百万?(0/1)");int zhong = input.nextInt();if(zhong==1){System.out.println("恭喜");}Else{System.out.println("好运");}}}4、import java.util.*;public class guo {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("输入小明的java和音乐成绩:");int javascore = input.nextInt();int musicscore = input.nextInt();if(javascore>90&&musicscore>80){System.out.println("奖励你个手机吧!");}Else if(javascore==100&&musicscore>70){System.out.println("奖励你一部汽车吧!");}}}2、import java.util.*;public class lu {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("请输密码:");int mm = input.nextInt();if(mm==”123456”){System.out.println(“可以取钱”);}Else {System.out.println(“密码错误,请重新输入”);}}}5、import java.util.*;public class lu {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("请输年份:");int year= input.nextInt();if (year%400 == 0 ||year%4 == 0){System.out.println(“是闰年!”);}Else {System.out.println(“是平年”);}}}6、import java.util.*;public class lu {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("请输数字");Int num= input.nextInt();if (num%2==0){System.out.println(“是偶数”);}Else {System.out.println(“是奇数”);}}}7、import java.util.*;public class lu {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("请输年月份");Int year =input.nextInt();Int month= input.nextInt();If(month==1||month==3||month==5||month==5||month==7||month==8||month==10||month==12){System.out.println(“是31天!”);}Else If(year%400 == 0 ||year%4 == 0&&month==2){System.out.println(“是29天!”);}Else if (year%400 != 0 &&year%4 != 0&&month==2){System.out.println(“是28天!”);}Else {System.out.println(“是30”);}}}}8、import java.util.*;public class guo {public static void main(String[] args){Scanner input = new Scanner(System.in);System.out.println("输入这个五位数");int num = in.nextInt();System.out.println(num/10000+num%10000/1000+num%10000%1000/100+num%10000%1000 %100/10+num%10000%1000%100%10);}}9、public class lufei{public static void main(String [] args){double time=0;for(double i =80000;i<=200000;i++){time=(i/800000-0.25)}int year =int(2006+time);System.out.println(year+"年学员能达到20万!");}}10、public class lu {public static void main(String[] args) { System.out.println("1000以内的奇数为:"); int k=0;int sum=0;for(int i=1;i<=1000;i++){if (i % 2!=0){System.out.print(i+" ");k++;}{sum = sum+i;}if(k % 10 ==0)System.out.println();}System.out.println("奇数和为:"+sum);}}11、public class lu{public static void main(String [] args){int sum=0;for (int i = 1; i <= 100; i++) {sum+=i;}System.out.println(sum);}}12、Public class fei {Public static void main(String[] args) {int count = 0;for(int i=1;i<=10;i++){count = count +i;if(count>20){break ;}}return i;}}13、public class lufei{public static void main(String [] args){int sum =0;for(int i=0;i<100;i++){if(i%2!=0){continue;}sum+=i;}System.out.println("偶数和”+sum);}}。
计算机二级考试JAVA上机考试试题
计算机二级考试JAVA上机考试试题选择题1下面代码段的输出是( )。
if(5 8L7)0&8L5|2)system.out.println("true");A.编译出错B.5752C.trueD.无任何输出参考答案:A参考解析:本题考查对位运算符和逻辑运算符的理解。
位运算符”&”和”|¨用于按位将两个数进行与和或的操作,两个操作数可以是整型、字节型、长整型和短整型,但不能是浮点型数据。
逻辑运算符&&只能对两个布尔型的数据进行运算,返回的结果也是布尔型的。
2在软件开发中,需求分析阶段可以使用的工具是( )。
A.N-S图B.DFD图C.PAD图D.程序流程图参考答案:B参考解析:在软件开发中,需求分析阶段常使用的工具有数据流图(DFD)、数据字典(DD)、判断树和判断表。
3下列叙述中正确的是( )。
A.顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C.顺序存储结构能存储有序表,链式存储结构不能存储有序表D.链式存储结构比顺序存储结构节省存储空间参考答案:A参考解析:顺序存储方式主要用于线性数据结构,它把逻辑上相邻的数据元素存储在物理上相邻的存储单元里,结点之间的关系由存储单元的邻接关系来体现。
链式存储结构的存储空间不一定是连续的。
4下列方法被调用后,一定使调用线程改变当前状态的是( )。
A.notify()B.yield()C.sleep()D.isAlive()参考答案:C参考解析:线程调用sleep函数后,使当前线程进入停滞状态。
yield函数可使线程进入可执行状态,排程器从可执行状态的线程中重新排程,调用了yield函数的线程有可能被马上执行,也有可能不会马上执行。
notify函数从线程等待池中移走任意一个线程,并把它放到锁标志等待池中,其状态仍旧是等待。
Java上机操作试题
Java上机操作试题一、Java基础语法1. 请简要描述Java的基本数据类型及其占用的空间大小。
2. 请编写一个Java程序,输出以下的结果:12 23 3 34 4 4 45 5 5 5 5提示:使用循环语句和嵌套循环语句。
3. 请编写一个Java程序,实现以下功能:输入两个整数a和b,输出a和b的和、差、积、商和余数。
4. 请编写一个Java程序,实现以下功能:输入一个正整数n,输出n的所有因子。
提示:可以使用循环语句和判断语句。
二、面向对象编程1. 请简要描述Java中类和对象的概念。
2. 请编写一个Java程序,实现以下功能:设计一个圆类Circle,包含一个double类型的半径属性,以及圆的面积和周长的计算方法。
提示:可以使用Math中的常量和方法。
3. 请编写一个Java程序,实现以下功能:设计一个可爱的小猫类Cat,包含一个String类型的name属性和一个void类型的cry方法,输出“喵喵喵!”。
4. 请编写一个Java程序,实现以下功能:定义一个矩形类Rectangle,包含一个int类型的长和宽属性,以及计算矩形周长和面积的方法。
提示:在构造函数中将长和宽初始化。
三、异常处理1. 请简要描述Java异常处理的基本原理。
2. 请编写一个Java程序,实现以下功能:计算两个整数相除的结果,如果除数为0,抛出异常并输出“除数不能为0!”,否则输出计算结果。
3. 请编写一个Java程序,实现以下功能:设计一个数组类,包含一个int类型的数组属性和一个获取指定位置元素的方法,如果指定位置超出范围,抛出异常并输出“数组下标越界!”,否则输出指定位置元素。
4. 请编写一个Java程序,实现以下功能:模拟登录功能,输入用户名和密码,如果用户名或密码不正确,抛出异常并输出“用户名或密码错误!”,否则输出“登录成功!”。
提示:可以使用字符串的equals方法进行字符串比较。
以上试题侧重测试Java基础语法、面向对象编程以及异常处理的掌握情况。
Java考试上机操作题
Java考试上机操作题题目一:数组求和给定一个整数数组,编写一个方法来计算数组中所有元素的总和。
输入一个整数数组。
输出返回数组中所有元素的总和。
示例输入:[1, 2, 3, 4, 5]输出:15代码实现public int sumArray(int[] nums) {int sum = 0;for (int num : nums) {sum += num;}return sum;}题目二:数组平均值给定一个整数数组,编写一个方法来计算数组中所有元素的平均值。
输入一个整数数组。
输出返回数组中所有元素的平均值。
示例输入:[1, 2, 3, 4, 5]输出:3.0代码实现public double averageArray(int[] nums) { int sum = 0;for (int num : nums) {sum += num;}return (double) sum / nums.length;}题目三:查找最大值给定一个整数数组,编写一个方法来查找数组中的最大值。
输入一个整数数组。
输出返回数组中的最大值。
示例输入:[1, 5, 2, 9, 4]输出:9代码实现public int findMax(int[] nums) {int max = Integer.MIN_VALUE;for (int num : nums) {if (num > max) {max = num;}}return max;}以上是三道Java考试上机操作题,分别涉及求和、求平均值和查找最大值的问题。
每道题目都附带了输入、输出示例和代码实现。
通过这些题目的解答,可以帮助考生加深对Java基本语法和数组操作的理解,并提升编程能力。
希望对你有帮助!。
java上机题1
java上机题11.java程序的开发周期一般包括(第二章)a.编译b.下载c.解释d.执行答案:a,b,c,d2.设置环境变量时,path须要指向java加装目录的子目录(第二章)a.jreb.libc.bind.demo答案:c3.设置classpath环境变量时主要需要设置java安装目录lib子目录下的哪两个jar 文件(第二章)a.java.jarb.tools.jarc.dt.jard.jconsole.jar答案:b,c4.编写java程序时,以说法正确的是(第二章)a.可以使用任何文本编辑器b.类的源文件名和类名可以不同c.可以采用javac命令编程java源文件d.编程后文件的拓展名叫class答案:a,c,d5.下面哪些是虚拟机的执行特点(第二章)a.多线程b.异常处理c.动态链接d.硬件相关答案:a,b,c6.java语言和c++较之,下面哪些就是java特有的(第二章)a.面向对象b.类库c.跨平台d.动态链接答案:c7.下列选项中,关于编译程序说法正确的是(第二章)a.编译生成目标代码b.编译程序与翻译程序促进作用相同c.语法分析属于编译程序的基本工作内容d.编译过程包括中间代码生成过程答案:a,c,d8.不属于变量的组成部分就是(第三章)a.变量名b.变量属性c.变量大小d.变量初值答案c9.关于基本数据类型的观点不恰当的就是(第三章)a.boolean就是java特定的内置值,或者为真或者为假b.float就是带符号的32十一位浮点数c.double就是带符号的64十一位浮点数d.char就是16十一位unicode字符答案d10.下列关于自动类型转换的说法中,不正确的一个是(第三章)a.char类型数据能自动转换为任何简单数据类型的数据b.char类型数据只能自动转换为int类型数据c.char类型数据无法自动切换为boolean类型数据d.char类型数据无法搞自动初始化答案abd11.下列回车字符的正确转义字符是(第三章)a./rb./nc.\\nd.\\r答案d12.以下的赋值语句恰当的就是(第三章)a.chara=14;b.inta=14;c.inta=14.0f;d.inta=(int)14.0;答案:bd13.下列代表八进制整数的数是(第三章)a.0xa6b.0144c.1840d.-1e3答案b14.以下不属于拓展赋值运算符的就是(第三章)a.+=b.<=c./=d.<<=答案b15.下列运算符中,表示布尔逻辑运算符的是(第三章)a.++b.<<、c.||d.&答案c16.下列关于equals()方法和==运算符的说法,正确的是(第三章)a.==运算符和equals()方法的功能一样可以互换b.equals()方法可以用以比较无机数据类型的数值与否成正比c.==运算符可以用以无法比较简单数据类型的数据值与否成正比d.==运算符和equals()方法的功能不全然一样,不容交换答案bcd17.表达式(40==0)&&(1/0<1)的值为(第三章)a.trueb.falsec.0d.运转出现异常答案b18.下列关于表达式类型的说法中,正确的是(第三章)a.若a、b和c都是整型变量,则a+b-c是整型表达式b.若x和y都是布尔型变量,则x&&y是布尔型表达式c.若x和y都是整型变量,则x>1&&y<1是整型表达式d.若a就是布尔型变量,b和c都就是整型变量,则a&&(b-c)>2就是布尔型表达式答案abd19.执行下列程序段之后,变量b的值为(第三章)publicclasstest1{publicstaticvoidmain(string[]args){inti=6;intj=12;booleana1=true;booleana=(j%i==0)&&(!a1)||(j/i!=2);system.out.println(a);}}a.falseb.truec.2d.0答案a20.设定义inty=5;则执行以下语句y/=--y-5;之后y的值为(第三章)a.-5b.-4c.-1d.运转时出现异常答案a21.执行如下语句之后,输出的结果是(第三章)publicclassex21{publicstaticvoidmain(string[]args){intx=5,y=5;x=x-++y;}}a.0b.5c.-1d.6答案c22.int类型的存储范围(第三章)a.-216~216-1b-232~232-1c.-264~264-1d.-231~231-1答案d23.character流与byte流的区别是(第三章)a.每次读入的字节数不同b.前者带有缓冲,后者没有c.二者没有区别,可以互换使用d.前者就是块读取,后者就是字节读取答案d24.下面哪些不是java语言中的关键字?(第三章)a.sizeofb.abstractc.nulld.native答案:acd25.char类型的值域范围就是(第三章)a.2-7~27-1b.0~216-1c.-215~215-1d.0~28-1答案b26.下面表示注释的语句有(第三章)a./**...*b./*...*/c.//d./**...*/答案bcd27.下面语句正确的是(第三章)a.char='abc';b.longl=oxfff;c.floatf=0.28;d.double=0.7e-3;答案:d28.在switch(exp)语句中exp的数据类型是(第三章)a.doubleb.charc.byted.short答案bcd29.以下程序代码中将可以编程错误的行是(第三章)1)publicclassexercise{2)publicstaticvoidmain(stringargs[]){3)floatf=0.1;4)f+=1.0;5)}6)}a.第2行b.第3行c.第4行d.第6行答案:b30.java程序设计所规定基本控制结构是(第三章)a.顺序、选择、循环b.输入、处理、输出c.树形、网形、环形d.主程序、子程序、函数答案:a31.java源文件和编程后的文件扩展名分别为(第三章)a..class和.javab..java 和.classc..class和.classd..java和.java答案b32.jcreator就是()(第三章)a.一种全新的程序语言b.一种程序辅助设计工具c.一种由java写成的,并支持javaapplet的浏览器d.一种游戏软件答案b33.以下声明的变量中,不合法的就是(第三章)a.internet_networkb.*numberc.hellod.sys_path答案b。
2022计算机二级JAVA上机题库考试题
2022 计算机二级 JAVA 上机题库考试题1.数据库管理系统是( )。
A.操作系统的一部分B.在操作系统支持下的系统软件C.一种编译系统D.一种操作系统【答案】B2.数据库管理系统是( )。
A.操作系统的一部分B.在操作系统支持下的系统软件C.一种编译系统D.一种通信软件系统【答案】B3.下列选项中,不属于数据管理员(DBA)职责的是( )。
A.数据库维护B.数据库设计C.改善系统性能,提高系统效率D.数据类型转换【答案】D4.数据库系统的核心是( )。
A.数据模型B.软件开发C.数据库设计D.数据库管理系统【答案】D5.下列叙述中正确的是( )。
A.数据库系统是一个独立的系统,不需要操作系统的支持B.数据库技术的根本目标是要解决数据的共享问题C.数据库管理系统就是数据库系统D.数据库系统由数据库应用系统、数据库和数据库管理系统组成。
【答案】B 本资料来源公_众.号:文得课堂,更多计算机等级考试题库及视频,上公_众.号:文得课堂查找。
6.负责数据库中查询操作的数据库语言是( )。
A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言【答案】C7.数据库管理系统中负责数据模式定义的语言是( )。
A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言【答案】A8.在数据库管理系统提供的数据语言中,负责数据的查询、增加、删除和修改等操作的是( )。
A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言【答案】C9.数据库中对概念模式内容进行说明的语言是( )。
A.数据定义语言B.数据操纵语言C.数据控制语言D.数据宿主型语言【答案】A10.数据库技术的根本目标是( )。
A.数据存储B.数据共享C.数据查询D.数据管理【答案】B11.结构化程序由顺序、选择、循环三种基本结构组成,以下相关叙述错误的是( )。
A.三种基本结构不可以嵌套使用B.顺序结构是按语句在程序中的先后顺序逐条执行,没有分支,没有转移C.选择结构是根据不同的条件执行不同分支中的语句D.循环结构是根据条件决定是否重复、重复执行多少次循环体语句【答案】A12.下列选项中属于面向对象设计方法主要特征的是( )。
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方法显示二个对象的属性值。
8.编写Java应用程序。
首先定义一个描述银行账户的Account类,包括成员变量“账号”和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。
其次,编写一个主类,在主类中测试Account类的功能。
9.编写Java应用程序。
首先,定义一个时钟类——Clock,它包括三个int型成员变量分别表示时、分、秒,一个构造方法用于对三个成员变量(时、分、秒)进行初始化,还有一个成员方法show()用于显示时钟对象的时间。
其次,再定义一个主类——TestClass,在主类的main方法中创建多个时钟类的对象,使用这些对象调用方法show()来显示时钟的时间。
10.编写Java应用程序。
首先,定义描述学生的类——Student,包括学号(int)、姓名(String)、年龄(int)等属性;二个方法:Student(intstuNo,Stringname,intage) 用于对对象的初始化,outPut()用于输出学生信息。
java上机题及答案
}
public static boolean isDaffodil(int n)//判断一个三位数是否是水仙花数
{
int i=n/100;//得到百位上的数
int j=(n-100*i)/10;//得到十位上的数
int k=n%10;//得到个位上的数
if(n==i*i*i+j*j*j+k*k*k)
System.out.println("数字的个数为:"+j);
System.out.println("空格的个数为:"+k);
System.out.println("其他字符的个数为:"+l);
}
}
【程序8】
public class Item8
{
public static void main(String[]args)
System.out.print("请输入一个成绩:");
x=s.nextInt();
Grade(x);
}
public static void Grade(int x)
{
char grade=x>=90?'A'
:x<60?'C'
:'B';
System.out.println("等级为:"+grade);
int j=0;//统计字符串中数字的个数
int k=0;//统计字符串中空格的个数
int l=0;//统计字符串中其他字符的个数
char a[]=s.toCharArray();
for(int ii=0;ii<a.length;ii++)
java上机期末考试题及答案
java上机期末考试题及答案一、选择题(每题2分,共20分)1. Java中,下列哪个关键字用于声明一个类?A. classB. interfaceC. structD. enum答案:A2. 在Java中,哪个方法用于获取数组的长度?A. length()B. size()C. count()D. length答案:A3. 下列哪个选项是Java中的一个基本数据类型?A. StringB. intC. ArrayListD. HashMap答案:B4. 在Java中,哪个关键字用于实现多态?A. abstractB. finalC. overrideD. implements答案:C5. Java中,哪个关键字用于捕获异常?A. tryB. catchC. throwD. throws答案:B6. Java中,哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. enum答案:B7. 在Java中,下列哪个关键字用于声明一个方法?A. methodB. functionC. defD. void答案:D8. Java中,哪个关键字用于声明一个私有方法?A. privateB. publicC. protectedD. default答案:A9. 在Java中,哪个关键字用于声明一个静态方法?A. staticB. finalC. abstractD. synchronized答案:A10. Java中,哪个关键字用于声明一个同步方法?A. synchronizedB. volatileC. transientD. final答案:A二、填空题(每题2分,共20分)1. Java中,用于声明一个类的关键字是______。
答案:class2. Java中,用于声明一个接口的关键字是______。
答案:interface3. Java中,用于声明一个抽象类的关键字是______。
Java程序上机练习题库(含答案)
上机练习题(共包括四部分、16个练习、共96个练习题,请使用“视图”中的“文档结构图”查看)一、java语言基础和面向对象(教材内容的第1、2、3章)练习1(4)掌握:各种数据类型变量的定义和访问,各种数据类型常量的使用,数据类型转换。
1. 编写Applet,其功能为:取两个小于1000的正随机数,若两个数均小于10,先将它们都放大50倍,否则不改变这两个数。
最后,求这两个数的和并将结果输出。
要求这些功能在主类的方法init( ) 中实现,并使输出结果仅保留小数点后4位(不需四捨五入)。
@程序import java.awt.*;import java.applet.*;public class Applet1 extends Applet{public void init( ){Label out1=new Label(" ");Label out2=new Label(" ");double x,y;add(out1);add(out2);x=Math.random( )*1000;y=Math.random( )*1000;if(x<10&y<10) { x*=50; y*=50; }out1.setText(""+x+"+"+y+" 约等于");out2.setText(""+(int)((x+y)*10000)/10000.0);}}2. 请编写一个Applet,其功能为:取一个小于10000的正随机整数,并输出该数的平方根。
要求这些功能在主类的方法paint( ) 中实现,并使输出结果在四捨五入后保留小数点后4位。
@程序import java.awt.*;import java.applet.*;public class Applet1 extends Applet{public void paint(Graphics g){int k;k=(int)(Math.random( )*1000);g.drawString(""+k+" 的平方根约等于"+(int)((Math.sqrt(k)+0.00005)*10000)/10000.0,20,20);}}3. 编写一个Applet,其功能为:取一个50~200之间的正随机整数,如果该数为奇数则求它的平方根并转换成float型数后再输出;如果该数为偶数则求它的平方并输出。
java上机试题及答案
java上机试题及答案Java上机试题及答案一、选择题1. 在Java中,以下哪个关键字用于声明一个类?- A. class- B. struct- C. interface- D. enum答案:A2. Java中用于捕获异常的关键字是?- A. try- B. catch- C. throw- D. finally答案:B二、填空题1. Java中,单精度浮点数使用的数据类型是________。
答案:float2. Java中,用于声明字符串的关键字是________。
答案:String三、编程题1. 编写一个Java程序,计算并输出100以内所有偶数的和。
```javapublic class EvenSum {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}System.out.println("The sum of even numbers within 100 is: " + sum);}}```四、简答题1. 简述Java中接口和抽象类的区别。
答案:接口和抽象类都是Java中实现抽象化的方式。
接口可以包含常量、抽象方法和默认方法,但不能包含状态信息;抽象类可以包含状态信息和非抽象方法。
接口中的所有方法默认为public,而抽象类中可以有private和protected方法。
接口不能实现其他接口,但可以继承多个接口;抽象类可以继承一个类,但不能继承另一个抽象类。
2. 描述Java中垃圾回收机制的基本原理。
答案:Java中的垃圾回收机制主要依赖于垃圾收集器(Garbage Collector, GC)。
GC通过追踪对象的引用来识别哪些对象是可达的,即被程序直接或间接引用的对象。
不可达的对象被认为是垃圾,GC会定期地回收这些对象占用的内存。
Java上机题目及答案代码
Java上机实践三实验题目1假设字符串s1、s2、s3的定义如下:String s1 = “A String”;String s2 = “A String”;String s3 = s1;请写出下列表达式的值:s1 == s2s1 == s3s1.length()s1.equals(s2)s1.equals(s3)pareTo(s2)pareTo(s3)s1.concat(s3)s1.indexOf(‘t’)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(pareTo(s2));System.out.println(pareTo(s3));System.out.println(s1.concat(s3));System.out.println(s1.indexOf('t'));System.out.println(stIndexOf('t'));}}实验2 Java异常处理一、实验目的1)掌握Java异常的概念及工作机制 2)掌握异常的分类3)掌握抛出异常语句的使用(throw)4)掌握抛出捕获处理异常语句的使用(try…catch…finally)5)掌握上抛异常语句的使用(throws)6)掌握创建自定义异常二、实验环境JDK1.6+Eclpise3.2三、实验内容1、编写一个应用程序,要求从键盘输入一个double型的圆的半径,计算并输出其面积。
java上机练习题及答案
JAVA构造方法(1)作业要求:上机调试成功后方可上交。
1.编写程序,终端输入需要判断的数据,通过调用判断素数Static int sushu(int x)的方法进行判断,并将判断结果输出到终端。
运行结果:程序源代码:package com.main3;import java.util.Scanner;public class M_ss {public static void main(String[] args) {Scanner input = new Scanner(System.in);for (int i = 0; i <2; i++) {System.out.println("请输入要判断的数:");int x=input.nextInt();sushu(x);}}static void sushu(int x) {boolean flag=true;int x1=x/2;for (int i=2; i <=x1; i++) {if(x%i==0)flag=false;}if(flag)System.out.printf("%d是素数。
\n",x);elseSystem.out.printf("%d不是素数。
\n", x);}}2.编写程序,输出所有的水仙花数。
请构造水仙花的判断方法。
Static int shuixianhua(int x)运行结果:程序源代码:package com.main3;public class M_shuixianhua {public static void main(String[] args) {for (int i = 100; i < 1000; i++) {shuixianhua(i);}// TODO Auto-generated method stub}public static void shuixianhua(int x) {int a,b,c;a = x/100;b = x/10%10;c = x%10;if(a*a*a+b*b*b+c*c*c==x)System.out.println(x+"是水仙花数。
java期末上机复习题目及其答案
<JAVA上机作业1>3.运行程序,分析并写出程序执行结果public class less1_3 {public static void main(String args[]){boolean x , y , xx , yy;int i = 10, j =10, ii = 10, jj = 10;x = true || (++i >10);y = true &&(++j >10);xx=true | (++ii >10);yy=true &(++jj >10);System.out.println("\n i = " +i+"\t j = "+j);System.out.println("\n x = " +x+"\t y = "+y);System.out.println("\n ii = " +ii+"\t jj = "+jj);System.out.println("\n xx = " +xx+"\t yy = "+yy);} }4.根据注释填空,并写出正确执行结果public class less1_4{ public static void main(String args[ ]){ float fa=102.5f;int ia=3;String sfa , sia , sc;double scd;System.out.println(fa+ia);sfa=Float.toString(fa); //将fa数值转换为字符串;sia= Interger.toString(ia); //将ia数值转换为字符串;sc= sfa+sia; //将字符串sfa和sia连接起来; System.out.println(“sc=”+sc);scd= Double.parseDouble(sc); //将字符串sc转换为数值; System.out.println(scd);} }6.(选做)解释划线语句功能,并写出程序执行结果。
Java基础经典上机题
int m=0;
7.
int n=1;
8.
int s=0;
9.
System.out.print("求 Fibonacci 数列前多少项数的和:");
10.
int num = input.nextInt();
11.
for(int i=0;i<=(num-1)/2;i++){
12.
m=m+n;
13.
n=m+n;
5.
//求 100-999 之间的水仙花数
6.
System.out.print("请输入一个三位数:");
7.
int m = input.nextInt();
8.
System.out.print("请输入一个三位数:");
9.
int n = input.nextInt();
10.
int a;
11.
int b;
通过键盘输入,初始化两个数据,将这两个数据交换后输出来。
1. import java.util.Scanner;
2. public class Ding3{
3.
public static void main (String[] args){
4.
Scanner input = new Scanner(System.in);
1. import java.util.Scanner;
2. public class Ding10{
3.
public static void main (String[] args){
4.
Scanner input = new Scanner(System.in);
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
IO操作
面向字节的输入输出流
案例1 字节流文件访问
【案例简介】使用字节流读取一个文本文件,并显示其内容。
文件中的内容为Hello world!How are you!【案例目的】掌握字节流的使用方法。
【运行界面】
【相关知识】
对字节流,其stream类的层次结构如下:
从图中可以看出,InputStream是所有字节输入流的祖先,而OutputStream是所有字节输出流的祖先。
1. InputStream
该类是一个抽象类,其方法包括:
int read()
int read(byte[])
int read(byte[],int,int)
这三个方法可从输入流读入字节或字节数组。
要注意的是无参数的read()方法返回一个0至255之间的整数或-1, -1代表遇到了流的结束,其它对应读入的字节。
后两种方法则将字节读入参数给定的字节数组,返回值是实际读入的字节数或-1(遇到了流结束)。
第三个read方法的后两个参数分别给出读入的起始位置和读入的最大字节数。
InputStream还有一些其它方法,如:
void close() //关闭流
int available() //报告流中直接可读的字节数
skip(long) //跳过流中指定的字节
2. OutputStream
OutputStream也是一个抽象类。
它的主要方法包括:
void write(int)
void write(byte[])
void write(byte[],int,int)
其中第一个方法的int型的参数对应要写入的字节,后两个方法的参数与InputStream类似。
void close() //关闭输出流
void flush() //强行将写入缓冲区中剩余的数据写入
3. FileInputStream和FileOutputStream
这两个类属于节点流,第一个类的源端和第二个类的目的端都是磁盘文件,它们的构造方法允许通过文件的路径名来构造相应的流。
如:
FileInputStream infile = new FileInputStream("myfile.dat");
FileOutputStream outfile = new FileOutputStream("results.dat");
要注意的是,构造FileInputStream, 对应的文件必须存在并且是可读的,而构造FileOutputStream时,如输出文件已存在,则必须是可覆盖的。
4. BufferedInputStream和BufferedOutputStream它们是过滤器流,其作用是提高输入输出的效率。
5. DataInputStream和DataOutputStream这两个类创建的对象分别被称为数据输入流和数据输出流。
这是很有用的两个流,它们允许程序按与机器无关的风格读写Java数据。
所以比较适合于网络上的数据传输。
这两个流也是过滤器流,常以其它流如InputStream或OutputStream作为它们的输入或输出。
面向字符的输入输出流
案例2 字符流文件访问
【案例简介】使用字符流读取一个文本文件,文件中的内容为Hello world!How are you!显示其内容并统计其单词数。
【案例目的】掌握Java字符流的使用。
【运行界面】
【技术要点】使用String类的split方法来将字符串分隔为字符串数组并计数。
【相关知识】
在JDK1.1之前,java.io包中的流只有普通的字节流(以byte为基本处理单位的流),这种流对于以16位的Unicode码表示的字符流处理很不方便。
从JDK1.1开始,java.io包中加入了专门用于字符流处理的类,它们是以Reader和Writer为基础派生的一系列类。
同类InputStream和OutputStream一样,Reader和Writer也是抽象类,只提供了一系列用于字符流处理的接口。
它们的方法与类InputStream和OutputStream类似,只不过其中的参数换成字符或字符数组。
InputStreamReader和OutputStreamWriter是java.io包中用于处理字符流的最基本的类,用来在字节流和字符流之间作为中介:从字节输入流读入字节,并按编码规范转换为字符;往字节输出流写字符时先将字符按编码规范转换为字节。
使用这两者进行字符处理时,在构造方法中应指定一定的平台规范,以便把以字节方式表示的流转换为特定平台上的字符表示。
InputStreamReader(InputStream in); //缺省规范
InputStreamReader(InputStream in, String enc); //指定规范enc
OutputStreamWriter(OutputStream out); //缺省规范
OutputStreamWriter(OutputStream out, String enc); //指定规范enc
同样的,为了提高字符流处理的效率,java.io中也提供了缓冲流BufferedReader和BufferedWriter。
其构造方法与BufferedInputStream和BufferedOutputStream相类似。
另外,除了read()和write()方法外,它还提供了整行字符处理方法:
public String readLine():BufferedReader的方法,从输入流中读取一行字符,行结束标志为‘\n’、‘\r’或两者一起。
public void newLine():BufferedWriter的方法,向输出流中写入一个行结束标志,它不是简单的换行符‘\n’或‘\r’,而是系统定义的行隔离标志(line separator)。
案例3 将下面数组写入文件中,并从文件中读出显示在屏幕上.
double[] a= { 19.99, 9.99, 5, 6, 15.99, 3.99, 4.99 };
图形化用户界面
案例4:1)在容器中添加组件标签、按钮,并使用网格布局管理器,运行界面如下图。
(纯代码编写)
【运行界面】
案例5:1)在容器中添加组件标签、按钮、下拉式列表(0-3),并使用边界布局管理器,运行界面如下图。
(纯代码编写)
【运行界面】
案例6:实现以下程序,当用户按下框架中的按钮时,对话框将被显示出来(初始不可见)。
如图。