竞赛java编程题50题(有答案)
竞赛java编程题50题(有答案)
竞赛java编程题50题(有答案)【程序1】题目:经典问题:有一对兔子。
从出生后的第三个月开始,他们每个月生一对兔子。
当小兔子长到第三个月时,它们每个月都会产下另一对兔子。
如果兔子没有死,每个月的兔子总数是多少//这是一个斐波拉契序列问题publicclasslianxi01{publicstaticvoidmain(字符串[]args){system.out.println(\第1个月的兔子对数:1\system.out.println(\第2个月的兔子对数:1\intf1=1,f2=1,f,m=24;for(inti=3;i<=m;i++){f=f2;f2=f1+f2;f1=f;system.out.println(\第\个月的兔子对数:\}}}[程序2]题目:判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去掉2到sqrt(这个数)。
如果它可以被除,它表明这个数不是质数,相反,它是质数。
公共课联席02{publicstaticvoidmain(string[]args){intcount=0;对于(inti=101;i<200;i+=2){booleanb=false;for(intj=2;j<=math.sqrt(i);j++){如果(i%j==0){b=false;break;}else{b=true;}if(b==true){count++;system.out.println(i);}}系统出来Println(\素数为:\}}[程序3]题目:打印出所有的\水仙花数\,所谓\水仙花数\是指一个三位数,其各位数字立方和等于该数本身。
例如:153是一个\水仙花数\,因为153=1的三次方+5的三次方+3的三次方。
公共课联席03{publicstaticvoidmain(string[]args){intb1,b2,b3;对于(intm=101;m<1000;m++){b3=m/100;b2=m%100/10;b1=m%10;if((b3*b3*b3+b2*b2*b2+b1*b1*b1)==m){system.out.println(m+\是一个水仙花数\}}}[程序4]题目:将一个正整数分解质因数。
JAVA编程题全集(100题及答案)
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
JAVA编程题全集(100题及答案)
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
编程知识竞赛试题及答案
编程知识竞赛试题及答案一、选择题(每题2分,共10分)1. 下列哪个不是Python语言的特性?A. 可读性强B. 动态类型C. 编译型语言D. 面向对象答案:C2. 在JavaScript中,以下哪个是正确的数据类型?A. voidB. undefinedC. nullD. 以上都是答案:D3. 在C++中,以下哪个关键字用于定义类?A. structB. classC. enumD. union答案:B4. 以下哪个算法不是排序算法?A. 冒泡排序B. 快速排序C. 深度优先搜索D. 归并排序答案:C5. 在HTML中,以下哪个标签用于定义文档的头部?A. <head>B. <title>C. <header>D. <h1>答案:A二、填空题(每题2分,共10分)6. 在Java中,用于定义包的关键字是________。
答案:package7. 在数据库中,用于查询数据的SQL语句是________。
答案:SELECT8. 在Python中,用于定义函数的关键字是________。
答案:def9. 在HTML中,用于创建超链接的标签是________。
答案:<a>10. 在CSS中,用于设置元素宽度的属性是________。
答案:width三、简答题(每题5分,共20分)11. 请简述面向对象编程的三大特性。
答案:面向对象编程的三大特性包括封装、继承和多态。
封装是将对象的实现细节隐藏起来,只暴露出一个可以被外界访问的接口;继承允许新创建的类(子类)继承现有类(父类)的属性和方法;多态是指允许不同类的对象对同一消息做出响应,但具体的行为会根据对象的实际类型而有所不同。
12. 请解释什么是栈(Stack)以及它的基本操作。
答案:栈是一种后进先出(LIFO)的数据结构,它的基本操作包括压栈(push),即将元素添加到栈顶;弹栈(pop),即移除栈顶元素;以及查看栈顶元素(peek/top)。
编程竞赛考试题库及答案
编程竞赛考试题库及答案1. 问题描述编写一个函数,该函数接收一个整数数组和一个目标值,找出数组中和为目标值的两个数的索引,并返回一个包含这两个索引的数组。
2. 输入格式输入包含两行,第一行为数组的长度 \( n \),第二行为 \( n \) 个整数,以空格分隔。
3. 输出格式输出一行,包含两个整数,用空格分隔,表示和为目标值的两个数的索引(索引从0开始)。
4. 样例输入42 7 11 155. 样例输出1 36. 问题分析此问题可以通过一次遍历数组,并使用哈希表记录每个元素的索引来解决。
遍历数组时,对于每个元素,计算目标值与当前元素的差值,然后在哈希表中查找是否存在该差值。
如果存在,则返回当前元素的索引和差值对应的索引。
7. 算法实现```pythondef two_sum(nums, target):hash_map = {}for i, num in enumerate(nums):difference = target - numif difference in hash_map:return [hash_map[difference], i]hash_map[num] = ireturn []```8. 测试用例- 输入: [3, 2, 4], 6- 输出: [1, 2]9. 注意事项- 如果数组中不存在两个数的和等于目标值,则返回空数组。
- 确保索引从0开始计数。
- 考虑数组中可能存在重复元素的情况。
10. 扩展问题如果数组中存在多个满足条件的数对,如何返回所有可能的数对索引?。
JAVA编程题全集(100题及答案)
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
JAVA竞赛题库
一.单项选择题(3*15=45)1. 如下代码:public class JavaContest {public static void main(String[] args) throws Exception {Thread.sleep(3000);System.out.println("alive");}}请问编译运行的结果是什么?A.编译出错B.运行时抛出异常C.程序运行大约3秒后输出:aliveD.程序运行大约50分钟后输出:aliveE.代码正常运行但没有输出2.如下代码:public class Test {public Test() {System.out.print("test");}public Test(String val) {this();System.out.print("test with" +val );}public static void main(String[] args) { Test test = new Test("wow");}}请问编译运行的结果是什么?A.testB.test test with wowC.test with wowD.编译失败3.代码片段:import java.io.*;public class Forest implements Serializable { private Tree tree = new Tree();public static void main(String[] args) { Forest f = new Forest();try {FileOutputStream fs = newFileOutputStream("Forest.Ser");ObjectOutputStream os = newObjectOutputStream(fs);os.writeObject(fs);os.close();} catch(Exception ex) {ex.printStackTrace();}}}class Tree {}哪一项的描述是正确的?A.编译出错B.运行时抛出异常C.一个Forest的实例被序列化了D.一个Forest的实例和一个Tree的实例都被序列化了4. 代码片段:public void aSafeMethod(Object value) {//在这里检查方法的参数//这里省略其它代码System.out.println(value.toString());}代码中的方法要求传入的参数是非空的,请问有什么比较好的方式去处理一个空值?A.assert value == null;B.if(value == null) {throw new IllegalArgumentException("value can not benull");}C.if(value == null) {throw new AssertionException("value can not be null");}D.assert value != null : "value can not be null";5. 给出如下代码片段:String[] elements = {"for","tea","too"};String first = (elements.length > 0) ? elements[0] : null;以下哪个是正确结果?A.编译失败B.运行时抛出异常C.first的值被设为nullD.first的值被设位”for”6.代码片段:public class Certkiller3 implements Runnable { public void run() {System.out.print("running");}public static void main(String[] args) {Thread t = new Thread(new Certkiller3());t.run();t.run();t.start();}}执行的结果是?A.编译出错B.运行时抛出异常C.代码正常执行并且输出:runningD.代码正常执行并且输出:runningrunningE.代码正常执行并且输出:runningrunningrunning7.代码片段:System.out.format("Pi is approximately %d", Math.PI); 请问执行的结果是什么?A.编译出错B.Pi is approximately 3.C.Pi is approximately 3.141593.D.运行时抛出异常8.如下代码:int i = 1;while (i != 5) {switch (i++ % 3) {case 0:System.out.print("A");break;case 1:System.out.print("B");break;case 2:System.out.print("C");break;}}请问编译运行的结果是什么?A.BCABB.BCBAC.ABCD.CBAE.NBAF.FIFA9.代码片段1:public class ComplexCalc {public int value;public void calc() { value += 5; }}代码片段2:public class MoreComplexCalc extends ComplexCalc { public void calc() { value -= 2; }public void calc(int multi) {calc();super.calc();value *= multi;}public static void main(String[] args) {MoreComplexCalc calc = new MoreComplexCalc();calc.calc(3);System.out.println("Oh it is:" + calc.value);}}请问编译运行的结果是什么?A.Oh it is: 9B.编译出错C.Oh it is: 15D.Oh it is: -6E.代码正常运行但没有输出F.运行时抛出异常G.Oh it is: 6H.Oh it is: -1510.代码片段:String text = "Welcome to Java contest";String[] words = text.split("\s");System.out.println(words.length);请问编译运行的结果是什么?A.0B. 1C. 4D.编译出错E.运行时抛出一个异常11.如下代码:public class Test {private int a;public int b;protected int c;int d;public static void main(String[] args) {Test test = new Test();int a = test.a++;int b = test.b--;int c = test.c++;int d = test.d--;System.out.println(a + " - " + b + " - " + c + " - " + d);}}请问哪个说法是正确的?A.编译错误,因为变量a,b,c和d没有被初始化B.编译错误,因为变量a无法被访问C.编译成功并输出0 – 0 – 0 – 0D.编译成功并输出1 – 1 – 1 – 112.代码片段:import java.util.*;public class TestSet {enum Num {ONE, THREE, TWO}public static void main(String[] args) {Collection coll = new LinkedList();coll.add(Num.THREE);coll.add(Num.ONE);coll.add(Num.THREE);coll.add(Num.TWO);coll.add(Num.TWO);Set set = new HashSet(coll);System.out.println(set);}}关于set变量的描述哪个选项是正确的?A.set变量只包含了coll集合中的3个变量,并且顺序与coll里的相同。
JAVA编程题全集(100题及答案)
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
JAVA编程题全集(100题及答案)
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
JAVA编程题全集(100题及答案)
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
JAVA编程题全集(100题及答案)
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
JAVA编程题全集(100题及答案)
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
JAVA编程题全集(100题及答案)
Java程序设计总复习题2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
JAVA编程题全集(50题及答案)
【程序1】ﻫ题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月得兔子总数为多少?//这就是一个菲波拉契数列问题ﻫpublicclass lianxi01 {ﻫpublicstaticvoid main(Str ing[]args) {System、out、println("第1个月得兔子对数:1”);System、out、println("第2个月得兔子对数:1");ﻫintf1= 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(inti=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 =tr ue;}}if(b== true) {count ++;System、out、println(i );}}System、out、println( "素数个数就是:"+count);}ﻫ}【程序3】题目:打印出所有得"水仙花数”,所谓"水仙花数”就是指一个三位数,其各位数字立方与等于该数本身。
例如:153就是一个"水仙花数”,因为153=1得三次方+5得三次方+3得三次方。
JAVA编程题全集(100题及答案)(word文档良心出品)
Java 程序设计总复习题1、编写一个Java 程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print (" 你好! " );}}2.编写一个 Java 程序,用 if-else 语句判断某年份是否为闰年。
//Programme Name LeapYear.javapublic class LeapYear{public static void main(Stringargs[]){ int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]); if((year%4==0&& year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else 语句3、编写一个Java 程序在屏幕上输出1! +2! +3! +⋯⋯ +10!的和。
( p64,例 2-2)//programme name ForTest.javapublic class ForTest {public static void main( String args[] ){ int i,j,mul,sum=0; for(i=1;i<=10;i++){mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;}System.out.println( “1! +2! +3! +⋯⋯ +10 != ”+sum); }}4.( 1)编写一个圆类 Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( )Circle(double r ) // 将半径设为// 创建 Circle对象时将半径初始化为r③ 三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) // 获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类 Cylinder ,它继承于上面的 Circle 类。
编程竞赛考试题库及答案
编程竞赛考试题库及答案1. 编程竞赛考试题库及答案1.1 题目一:字符串反转编写一个函数,输入一个字符串,输出该字符串的反转结果。
答案:```pythondef reverse_string(s):return s[::-1]```1.2 题目二:找出数组中的最大值给定一个整数数组,请找出数组中的最大值并返回。
答案:```pythondef find_max_value(arr):return max(arr)```1.3 题目三:计算阶乘编写一个函数,输入一个非负整数n,返回n的阶乘。
答案:```pythondef factorial(n):if n == 0:else:return n * factorial(n-1)```1.4 题目四:判断回文数编写一个函数,判断输入的整数是否为回文数。
答案:```pythondef is_palindrome(x):str_x = str(x)return str_x == str_x[::-1]```1.5 题目五:合并两个有序数组给定两个有序整数数组nums1和nums2,其中nums1的长度为m,nums2的长度为n,请你将nums2合并到nums1中,使合并后的数组仍然有序。
答案:```pythondef merge(nums1, m, nums2, n):i, j = m - 1, n - 1index = m + n - 1while i >= 0 and j >= 0:if nums1[i] > nums2[j]:nums1[index] = nums1[i]i -= 1else:nums1[index] = nums2[j]index -= 1nums1[:index+1] = nums2[j+1:]```1.6 题目六:寻找两个有序数组的中位数给定两个大小分别为m和n的有序数组nums1和nums2,请找出这两个数组的中位数。
JAVA编程题全集(100题及答案).doc
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
竞赛java编程题50题(有答案)
【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少;public class lianxi04{public static void main(String[] args) {Scanner s = new Scanner;"请键入一个正整数: ");int n = ();int k=2;+ "=" );while(k <= n) {if(k == n) { else if( n % k == 0) { + "*");n = n / k; }else k++;}}}package akjava;import class FenJie {/*** @param args*/public static void main(String[] args) { "请输入你要分解的整数:");Scanner scan=new Scanner;int n=();int k=2;"=");for(;n>1;){;public class lianxi05 {public static void main(String[] args) {int x;char grade;Scanner s = new Scanner;"请输入一个成绩: ");x = ();grade = x >= 90 'A': x >= 60 'B':'C';"等级为:"+grade);}}package akjava;import class denji {/*** @param args* @throws IOException*/public static void main(String[] args) throws IOException { BufferedReader s=new BufferedReader(new InputStreamReader);String art=();Scanner scan=new Scanner;"请输入你的数据:");int n=();char grade= (n>=90 'A': ( n>=60 'B' : 'C'));"grade="+grade);}}【程序6】题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
JAVA(编程、程序员)竞赛试题及答案
JAVA(编程、程序员)竞赛试题及答案一、选择题1.作为 Java 应用程序入口的 main 方法,其声明格式可以是( A )。
A、public static void main(String[] args)B、public static int main(String[] args)C、public void main(String[] args)D、public int main(String[] args)2.在一个合法的 Java 源程序文件中定义了 3 个类,其中属性为 public 的类可能有( B )个。
A、0B、1C、2D、33.下面( B )单词是 Java 语言的关键字。
A、sizeofB、abstractC、nullD、String4.下面( C )语句不会出现编译警告或错误。
A、float f = 1.3;B、char c = “a”;C、byte b = 25;D、booleand = null;5.下面关于数组的说法,错误的是( B )。
A、数组是最简单的复合数据类型,是一系列数据的集合B、声明数组时,必须分配内存C、数组的元素可以是值(基本数据类型)、对象或其他数组D、一个数组中的所有值都必须是相同的类型6.下面关于方法的说法,错误的是( C )。
A、Java 中的方法参数传递时传值调用,而不是地址调用B、方法体是对方法的实现,包括变量声明和 Java 的合法语句C、如果程序定义了一个或多个构造方法,在创建对象时,也可以用系统自动生成空的构造方法D、类的私有方法不能被其子类直接访问7.下面关于内部类的说法,错误的是( A )。
A、内部类不能有自己的成员方法和成员变量B、内部类可用 abstract 修饰定义为抽象类,也可以用 private 或protected定义C、内部类可作为其他类的成员,而且可访问它所在类的成员D、除 static 内部类外,不能在类内声明 static 成员8.在字节流中,可以使用文件名作为参数的类有( C )。
50道JAVA基础编程练习题(含答案)
50道JAVA基础编程练习题Java学习笔记2010-03-19 17:45:01 阅读1117 评论6 字号:大中小订阅【程序18】题目:两个乒乓球队进行比赛,各出三人。
甲队为a,b,c三人,乙队为x,y,z三人。
已抽签决定比赛名单。
有人向队员打听比赛的名单。
a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
import java.util.ArrayList;public class Lx18 {String a,b,c;public static void main(String[] args) {String[] op = { "x", "y", "z" };ArrayList<Lx18> arrayList=new ArrayList<Lx18>();for (int i = 0; i < 3; i++)for (int j = 0; j < 3; j++)for (int k = 0; k < 3; k++) {L x18 a=new Lx18(op[i],op[j],op[k]);if(!a.a.equals(a.b)&&!a.b.equals(a.c)&&!a.a.equals("x")&&!a.c.equals("x")&&!a.c.equals("z")){arrayList.add(a);}}for(Object a:arrayList){System.out.println(a);}}public Lx18(String a, String b, String c) {super();this.a = a;this.b = b;this.c = c;}@Overridepublic String toString() {// TODO Auto-generated method stubreturn"a的对手是"+a+","+"b的对手是"+b+","+"c的对手是"+c+"\n";}}【程序26】题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【程序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++) {b3 = m / 100;b2 = m % 100 / 10;b1 = m % 10;if((b3*b3*b3 + b2*b2*b2 + b1*b1*b1) == m) {System.out.println(m+"是一个水仙花数"); }}}}【程序4】题目:将一个正整数分解质因数。
例如:输入90,打印出90=2*3*3*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n <> k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
import java.util.*;public class lianxi04{public static void main(String[] args) {Scanner s = new Scanner(System.in);System.out.print( "请键入一个正整数: ");int n = s.nextInt();int k=2;System.out.print(n + "=" );while(k <= n) {if(k == n) {System.out.println(n);break;}else if( n % k == 0) {System.out.print(k + "*");n = n / k; }else k++;}}}【程序5】题目:利用条件运算符的嵌套来完成此题:学习成绩> =90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
import java.util.*;public class lianxi05 {public static void main(String[] args) {int x;char grade;Scanner s = new Scanner(System.in);System.out.print( "请输入一个成绩: ");x = s.nextInt();grade = x >= 90 ? 'A': x >= 60 ? 'B':'C';System.out.println("等级为:"+grade);}}【程序6】题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
/**在循环中,只要除数不等于0,用较大数除以较小的数,将小的一个数作为下一轮循环的大数,取得的余数作为下一轮循环的较小的数,如此循环直到较小的数的值为0,返回较大的数,此数即为最大公约数,最小公倍数为两数之积除以最大公约数。
* /import java.util.*;public class lianxi06 {public static void main(String[] args) {int a ,b,m;Scanner s = new Scanner(System.in);System.out.print( "键入一个整数:");a = s.nextInt();System.out.print( "再键入一个整数:");b = s.nextInt();deff cd = new deff();m = cd.deff(a,b);int n = a * b / m;System.out.println("最大公约数: " + m);System.out.println("最小公倍数: " + n);}}class deff{public int deff(int x, int y) {int t;if(x < y) {t = x;x = y;y = t;}while(y != 0) {if(x == y) return x;else {int k = x % y;x = y;y = k;}}return x;}}【程序7】题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
import java.util.*;public class lianxi07 {public static void main(String[] args) {int digital = 0;int character = 0;int other = 0;int blank = 0;char[] ch = null;Scanner sc = new Scanner(System.in);String s = sc.nextLine();ch = s.toCharArray();for(int i=0; i<ch.length; i++) {if(ch >= '0' && ch <= '9') {digital ++;} else if((ch >= 'a' && ch <= 'z') || ch > 'A' && ch <= 'Z') {character ++;} else if(ch == ' ') {blank ++;} else {other ++;}}System.out.println("数字个数: " + digital);System.out.println("英文字母个数: " + character);System.out.println("空格个数: " + blank);System.out.println("其他字符个数:" + other );}}【程序8】题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
import java.util.*;public class lianxi08 {public static void main(String[] args) {long a , b = 0, sum = 0;Scanner s = new Scanner(System.in);System.out.print("输入数字a的值:");a = s.nextInt();System.out.print("输入相加的项数:");int n = s.nextInt();int i = 0;while(i < n) {b = b + a;sum = sum + b;a = a * 10;++ i;}System.out.println(sum);}}【程序9】题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。
例如6=1+2+3.编程找出1000以内的所有完数。
public class lianxi09 {public static void main(String[] args) {System.out.println("1到1000的完数有:");for(int i=1; i<1000; i++) {int t = 0;for(int j=1; j<= i/2; j++) {if(i % j == 0) {t = t + j;}}if(t == i) {System.out.print(i + " ");}}}【程序10】题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?public class lianxi10 {public static void main(String[] args) {double h = 100,s = 100;for(int i=1; i<10; i++) {s = s + h;h = h / 2;}System.out.println("经过路程:" + s);System.out.println("反弹高度:" + h / 2);}}【程序11】题目:有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?public class lianxi11 {public static void main(String[] args) {int count = 0;for(int x=1; x<5; x++) {for(int y=1; y<5; y++) {for(int z=1; z<5; z++) {if(x != y && y != z && x != z) {count ++;System.out.println(x*100 + y*10 + z );}}}}System.out.println("共有" + count + "个三位数");}}【程序12】题目:企业发放的奖金根据利润提成。