Java经典练习题-循环

合集下载

java编程基础练习题

java编程基础练习题

java编程基础练习题Java是一种面向对象的编程语言,具有跨平台特性,被广泛应用于开发各种应用程序。

对于初学者来说,掌握Java编程基础是非常重要的。

在本文中,我将为您提供一些Java编程基础练习题,帮助您巩固和提升自己的编程技能。

练习一:Hello, Java!创建一个Java类,命名为HelloJava,编写一个main方法,在该方法中打印输出"Hello, Java!"。

运行该程序,确保输出结果与期望一致。

练习二:变量和数据类型创建一个Java类,命名为Variables,编写一个main方法。

在该方法中,完成以下任务:1. 声明一个整型变量age,并赋值为182. 声明一个浮点型变量height,并赋值为1.753. 声明一个布尔型变量isMale,并赋值为true4. 声明一个字符型变量initial,并赋值为'A'5. 声明一个字符串型变量name,并赋值为"Tom"6. 打印输出上述变量的值运行该程序,确保输出结果与期望一致。

练习三:数学运算创建一个Java类,命名为MathOperations,编写一个main方法。

在该方法中,完成以下任务:1. 声明两个整型变量a和b,并分别赋值为10和52. 分别使用加法、减法、乘法、除法、取余运算对a和b进行运算,并打印输出结果运行该程序,确保输出结果与期望一致。

练习四:条件语句创建一个Java类,命名为Conditions,编写一个main方法。

在该方法中,完成以下任务:1. 声明一个整型变量score,并赋值为852. 使用条件语句判断score的等级,将结果存储在一个字符串变量grade中。

具体规则如下:- 当score大于等于90时,grade为"A"- 当score大于等于80且小于90时,grade为"B"- 当score大于等于70且小于80时,grade为"C"- 当score大于等于60且小于70时,grade为"D"- 当score小于60时,grade为"E"3. 打印输出grade的值运行该程序,确保输出结果与期望一致。

java运用循环编程题及答案

java运用循环编程题及答案

1.编写一个数的阶乘和。

eg. Sum=1!+2!+3!+4!+5! publicclass j1_20 {publicstaticvoid main(String[] args) {int a,sum,b=0,i;sum=0;for(b=1;b<=5;b++){a=1;for(i=1;i<=b;i++){a=a*i;}sum+=a;}System.out.println("1到5的结成和"+sum);}}结果2.把一个数组里的数字按照从小到大的顺序排列出来publicclass j_sort {publicstaticvoid main(String[] args) {int a[]=newint[]{12,15,63,56,21,71,91,3,16,43}; for(int i=0;i<10;i++){for(int j=i+1;j<10;j++){if(a[i]>a[j]){int t;t=a[i];a[i]=a[j];a[j]=t;}}}System.out.println("从小到大的顺序为:"); for(int i=0;i<10;i++){System.out.print(a[i]+" ");}}}结果是3.输出一个三角形publicclass j_triangle1 {publicstaticvoid main(String[] args) {int a=5,b=5;for(int i=1;i<5;i++){for(int j=0;j<5-i;j++){System.out.print(" ");}for(int e=1;e<=i;e++){System.out.print(""+" ");}System.out.println("");}System.out.println("-----------");for(int i=1;i<5;i++){for(int j=0;j<5-i;j++){System.out.print(" ");}for(int e=1;e<2*i;e++){System.out.print("");}System.out.println("");}}}结果是4,.输出最小公约数是publicclass j_prime {publicstaticvoid main(String[] args) {int a=3,b=4,i;for(i=1;i>0 ;i++){if(i%a==0&&i%b==0){System.out.print("最小公约数是:"+i); break;}}}}结果是5.最大公约数publicclass j偶数和 {publicstaticvoid main(String[] args) {int a,sum=0;for(a=1;a<=100;a++){if(a%2==0){sum+=a;}}System.out.println("一百以内的偶数和"+sum);}}6.输出99乘法口诀publicclass j99表 {publicstaticvoid main(String[] args) {// 效果1int a,b,sum;for(a=1;a<10;a++){for(b=1;b<=a;b++){char c=(char)a;char d=(char)b;System.out.printf("%d"+"*"+"%d"+"="+a*b+"\t",a,b);}System.out.println(" ");}// //效果2// int i,j,k;// for(i=1;i<=9;i++)// {// for(j=1;j<=i;j++)// {// k=i*j;// System.out.print( " \t" +k);// }// System.out.print( "\n" );// }}}结果是7.统计个位数是 6 ,并且能被 3 整除的 5 位数共有多少个?publicclass j3_6 {publicstaticvoid main(String[] args) {int a,i=1000,sum=0;for(i=1000;i<10000;i++){a=10*i+6;if(a%6==0){sum+=1;}}System.out.print("统计个位数是 6 ,并且能被 3 整除的 5 位数共有:"+sum+"个!");}}结果是8.输出100以内的所有质数publicclass j100内质数 {publicstaticvoid main(String[] args) {int a,b,sum=0;for(a=2;a<=100;a++){boolean flag=true;for(b=2;b<a;b++){if(a%b==0) flag=false;}if(flag){System.out.println(a);sum+=1;}}System.out.println("一共有"+sum+"质数");}}结果是10.输出大于200的最小质数publicclass j4 {publicstaticvoid main(String[] args) {int a=200,b=2;for (a=200; ;a++){boolean flag=true;for(b=2;b<a;b++) {if (a%b==0) flag=false;}if(flag){System.out.println("大于200的最小质数是:"+a); break;}}}}结果是。

java基础编程练习题

java基础编程练习题

Java基础编程练习题一、基本语法1. 编写一个Java程序,输出“Hello, World!”。

2. 声明一个整型变量并赋值为10,然后输出该变量的值。

3. 编写一个Java程序,实现两个整数的加、减、乘、除运算。

4. 编写一个Java程序,判断一个整数是奇数还是偶数。

5. 编写一个Java程序,交换两个变量的值。

二、控制结构1. 使用ifelse语句判断一个年份是否为闰年。

2. 编写一个Java程序,使用for循环输出1到100的所有偶数。

3. 使用while循环计算1+2+3++100的和。

4. 编写一个Java程序,使用dowhile循环输出1到10的所有整数。

5. 使用switch语句实现一个简单的计算器程序,支持加、减、乘、除四种运算。

三、数组1. 声明一个整型数组,并初始化为{1, 2, 3, 4, 5},然后输出数组中的每个元素。

2. 编写一个Java程序,计算数组中所有元素的和。

3. 实现一个方法,用于查找数组中的最大值。

4. 编写一个Java程序,将一个字符串数组按照字母顺序排序。

5. 使用二维数组输出一个5x5的乘法表。

四、字符串操作1. 编写一个Java程序,连接两个字符串。

2. 实现一个方法,判断一个字符串是否为回文。

3. 编写一个Java程序,将字符串中的所有小写字母转换为大写字母。

4. 使用StringBuilder类实现字符串的逆序输出。

5. 编写一个Java程序,计算一个字符串中某个字符出现的次数。

五、面向对象基础1. 创建一个名为Person的类,包含姓名、年龄和性别属性,并提供相应的构造方法和getter/setter方法。

2. 编写一个Java程序,实现两个Person对象的比较(按年龄比较)。

3. 创建一个Student类,继承自Person类,并添加成绩属性。

4. 编写一个Java程序,实现Student类的多态。

5. 创建一个接口Animal,包含吃、睡觉和叫三个方法,然后创建两个类Dog和Cat实现该接口。

java循环经典题目

java循环经典题目

1.编写程序,打印出100以内所有5的倍数,如:100,95,90,85, (5)要求:用while结构和for结构两种方法。

2.求1-100以内的奇数和。

要求:用while结构和for结构两种方法。

3.接受用户输入一个整数,计算从1到该整数的和,如:输入50,则计算1+2+3……50的和。

要求:用while结构和for结构两种方法。

4.接受用户输入一个正整数,求出该数的阶乘,如:例如:输入5,则计算5*4*3*2*1=120。

要求:用while结构和for结构两种方法。

5.企业年底发放的奖金根据当年的利润提成。

利润低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万的部分,可提成5%;40万到60万之间时,高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,输入当年的利润,求应发放奖金总数。

6.判断一个五位数是否为回文数。

(P212 第三部分)提示:所谓回文数就是一个数的所有位对称,如12321就是回文数,23432和45654也是回文数,输入一个数,判断是不是回文数。

7.根据条件确定公司是否已经为司机投保如果司机满足下列条件之一,公司则为他们投保:(1) 司机已婚。

(2) 司机为30岁以上的未婚男性。

(3) 司机为25岁以上的未婚女性。

如果以上条件一个也不满足,则公司不为司机投保。

请编写一个程序,根据用户输入司机的婚姻状况、性别和年龄,判定该司机是否已经投保。

(思路:婚姻状况:“y”表示已婚,“n”表示未婚;性别:“m”表男性,“f”表女性;使用多重if结构或者嵌套if结构编写程序)8.打印:1121231234123459.打印:54321432132121110.打印: 12345 1234 12312111.打印: 121321 4321 54321。

java考试题目

java考试题目

java考试题目一、选择题1. 下列哪种数据类型在Java中是不可更改的?A. intB. floatC. doubleD. String2. Java中的关键字“final”可以修饰下列哪些内容?A. 变量B. 方法C. 类D. 以上都是3. 在Java中,下列哪种循环结构可以不确定循环次数?A. for循环B. while循环C. do-while循环D. switch-case循环4. 下列哪个关键字用于终止循环?A. endB. nextC. breakD. finish5. Java中的“this”关键字用于什么目的?A. 表示当前类的实例B. 表示当前方法的返回值C. 表示父类的实例D. 表示子类的实例二、填空题1. Java中的包机制是为了解决()问题。

2. 在Java中,如果希望变量在多个线程之间共享,应该使用()关键字修饰。

3. Java中的异常处理机制包括try、catch和()。

4. 在Java中,使用()关键字来调用父类的构造方法。

5. Java中的集合框架包括List、Set和()。

三、简答题1. 什么是Java中的多态性?如何实现多态性?2. 请简要介绍Java中的封装性是什么意思,以及如何实现封装性?3. 什么是Java中的继承性?如何使用继承性创建子类?4. Java中的接口是什么?接口和抽象类有什么区别?5. Java中的异常处理机制是如何工作的?请举例说明异常处理的过程。

四、编程题请编写一个Java程序,实现以下功能:- 创建一个名为Student的类,包含学生的姓名、年龄和学号属性;- 实现一个方法用于输出学生的信息;- 创建多个Student对象,并输出他们的信息。

以上就是Java考试题目的所有内容,希望你能准确回答并顺利通过考试!。

N个JAVA经典例题附详细答案要点

N个JAVA经典例题附详细答案要点

N个JAVA经典例题附详细答案【程序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】题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。

java-循环结构的例题

java-循环结构的例题

java-循环结构的例题1.从键盘输⼊个数不确定的整数,并判断输⼊的正数和负数的个数,输⼊为0时结束程序。

提⽰:最简单“⽆限”循环格式:while(true),for(;;),⽆限循环存在的原因是因为并不知道要循环多少次,需要根据循环体内部的某些条件,来控制循环的结束。

代码实现:import java.util.Scanner;class ex{public static void main(String[] args){int count1=0;int count2=0;while(true){System.out.println("请输⼊⼀个整数:");Scanner scan=new Scanner(System.in);int n=scan.nextInt();if(n>0){count1++;}else if(n<0){count2++;}elsebreak;}System.out.println("正数的个数为"+count1);System.out.println("负数的个数为"+count2);}} 运⾏结果:2.打印九九乘法表代码实现:class ex{public static void main(String[] args){for(int i=1;i<=9;i++){for(int j=1;j<=i;j++){System.out.print(i+"*"+j+"="+(i*j)+" ");}System.out.println();}}}运⾏结果:3.100000以内的所有质数的输出质数:素数,只能被1和它本⾝整除的⾃然数。

==> 从2开始到n-1结束,都不能被这个数整除。

最⼩的质数:2注意:(1既不是质数也不是合数)代码:实现⽅法⼀代码:(效率差)class ex{public static void main(String[] args){boolean isFlag=true;//定义⼀个标识//获取当前时间距离1970-01-01 00:00:00的毫秒数long start=System.currentTimeMillis();for(int i=2;i<=100000;i++){//遍历10000以内的⾃然数for(int j=2;j<i;j++){if(i%j==0){//能除尽——但这⾥不能⽤break,因为会退出当前循环isFlag=false;//标识设为false}}if(isFlag==true){//如果为true,说明都不能除尽System.out.println(i);}//重置isFlagisFlag=true;}long end=System.currentTimeMillis();System.out.println("所花费的时间为:"+(end-start)+"s");}}运⾏截图:算法优化⼀代码:class ex{public static void main(String[] args){boolean isFlag=true;//定义⼀个标识//获取当前时间距离1970-01-01 00:00:00的毫秒数long start=System.currentTimeMillis();for(int i=2;i<=100000;i++){//遍历100000以内的⾃然数for(int j=2;j<i;j++){//被i去除if(i%j==0){//能除尽——但这⾥不能⽤break,因为会退出当前循环isFlag=false;//标识设为falsebreak;//优化1 遇到了能除尽的,就退出⾥边的循环:只对本⾝⾮质数的⾃然数有效 }}if(isFlag==true){//如果为true,说明都不能除尽System.out.println(i);}//重置isFlagisFlag=true;}long end=System.currentTimeMillis();System.out.println("所花费的时间为:"+(end-start)+"s");}}运⾏截图:算法优化⼆代码:class ex{public static void main(String[] args){boolean isFlag=true;//定义⼀个标识//获取当前时间距离1970-01-01 00:00:00的毫秒数long start=System.currentTimeMillis();for(int i=2;i<=100000;i++){//遍历100000以内的⾃然数for(int j=2;j<=Math.sqrt(i);j++){if(i%j==0){//能除尽——但这⾥不能⽤break,因为会退出当前循环isFlag=false;//标识设为falsebreak;//优化1 遇到了能除尽的,就退出⾥边的循环:只对本⾝⾮质数的⾃然数有效 }}if(isFlag==true){//如果为true,说明都不能除尽System.out.println(i);}//重置isFlagisFlag=true;}long end=System.currentTimeMillis();System.out.println("所花费的时间为:"+(end-start)+"s");}}运⾏截图:算法优化三:代码:class ex{public static void main(String[] args){boolean isFlag=true;//定义⼀个标识//获取当前时间距离1970-01-01 00:00:00的毫秒数long start=System.currentTimeMillis();for(int i=2;i<=100000;i++){//遍历100000以内的⾃然数for(int j=2;j<=Math.sqrt(i);j++){if(i%j==0){//能除尽——但这⾥不能⽤break,因为会退出当前循环isFlag=false;//标识设为falsebreak;//优化1 遇到了能除尽的,就退出⾥边的循环:只对本⾝⾮质数的⾃然数有效}}if(isFlag==true){//如果为true,说明都不能除尽System.out.println(i);//如果不想显⽰,可以统计⼀下质数的个数,在这⾥count++(记得在开头要初始化为0) }//重置isFlagisFlag=true;}long end=System.currentTimeMillis();System.out.println("所花费的时间为:"+(end-start)+"s");}} 运⾏截图:优化⽅法四:(这个⽅法相⽐之前的只是输出的数据少了—注释了⼀条语句,添了⼀条语句,如果你把之前的三种优化⽅法都照着这种改⼀下,都会变快很多)代码:class ex{public static void main(String[] args){boolean isFlag=true;//定义⼀个标识int count=0;//获取当前时间距离1970-01-01 00:00:00的毫秒数long start=System.currentTimeMillis();for(int i=2;i<=100000;i++){//遍历10000以内的⾃然数for(int j=2;j<=Math.sqrt(i);j++){if(i%j==0){//能除尽——但这⾥不能⽤break,因为会退出当前循环isFlag=false;//标识设为falsebreak;//优化1 遇到了能除尽的,就退出⾥边的循环:只对本⾝⾮质数的⾃然数有效}}if(isFlag==true){//如果为true,说明都不能除尽//System.out.println(i);count++;}//重置isFlagisFlag=true;}long end=System.currentTimeMillis();System.out.println("所花费的时间为:"+(end-start)+"s");}}实现⽅式⼆:(运⽤到了continue关键字)class ex{public static void main(String[] args){boolean isFlag=true;//定义⼀个标识int count=0;//获取当前时间距离1970-01-01 00:00:00的毫秒数long start=System.currentTimeMillis();label:for(int i=2;i<=100000;i++){//遍历10000以内的⾃然数for(int j=2;j<=Math.sqrt(i);j++){if(i%j==0){//能除尽——但这⾥不能⽤break,因为会退出当前循环continue label;//优化2 遇到了能除尽的,就退出⾥边的循环:只对本⾝⾮质数的⾃然数有效}}count++;//能执⾏到此步骤的都是质数}long end=System.currentTimeMillis();System.out.println("质数的个数为:"+count);System.out.println("所花费的时间为:"+(end-start)+"s"); }} 运⾏截图:。

JAVA编程题全集(100题及答案)q

JAVA编程题全集(100题及答案)q

JAVA编程题全集(100题及答案)qJava程序设计总复习题1、编写一个Java程序,用if-else语句判断某年份是否为闰年。

(分支)2、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。

(循环)3、依次输入10个学生成绩,判断学生(优秀、良好、中等、及格、不及格)并计算人数(switch)4、使用冒泡排序(数组)5、实现会员注册,要求用户名长度不小于3,密码长度不小于6,注册时两次输入密码必须相同(字符串)6、一个景区根据游人的年龄收取不同价格的门票。

请编写游人类,根据年龄段决定能够购买的门票价格并输出,然后写出测试类测试该类(类的基本实现) 7、(1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型); // 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r ③ 三个成员方法double getArea( ) //获取圆的面积 double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。

还拥有:①一个成员变量double hight(私有,浮点型); // 圆柱体的高;②构造方法Cylinder (double r, double h ) //创建Circle对象时将半径初始化为r③ 成员方法double getVolume( ) //获取圆柱体的体积void showVolume( ) //将圆柱体的体积输出到屏幕编写应用程序,创建类的对象,分别设置圆的半径、圆柱体的高,计算并分别显示圆半径、圆面积、圆周长,圆柱体的体积。

8、编写一个Java应用程序,从键盘读取用户输入两个字符串,并重载3个函数分别实现这两个字符串的拼接、整数相加和浮点数相加。

Java第三章习题

Java第三章习题

第3章一、选择题1.下列()不属于Java语言流程控制结构?(A)分支语句(B)跳转语句(C)循环语句(D)赋值语句2.假设a是int类型的变量,并初始化为1,则下列()是合法的条件语句?(A)if(a){} (B)if(a<<=3){} (C)if(a=2){} (D)if(true){} 3.下列说法中,不正确的一个是(C )。

(A)switch语句的功能可以由if…else if语句来实现(B)若用于比较的数据类型为double型,则不可以用switch语句来实现(C)if …else if语句的执行效率总是比switch语句高(D)case子句中可以有多个语句,并且不需要大括号{}括起来4.设a、b为long型变量,x、y为float型变量,ch为char类型变量且它们均已被赋值,则下列语句中正确的是()。

(A)switch(x+y) {} (B)switch(ch+1) {}(C)switch ch {} (D)switch(a+b); {}5.下列循环体执行的次数是()。

int y=2, x=4;while(--x != x/y){ }(A)1 (B)2 (C)3 (D)46.下列循环体执行的次数是()。

int x=10, y=30;do{ y-=x;x++; }while(x++<y--);(A)1 (B)2 (C)3 (D)47.已知如下代码:switch(m){case 0: System.out.println("Condition 0");case 1: System.out.println("Condition 1");case 2: System.out.println("Condition 2");case 3: System.out.println("Condition 3");break;default:System.out.println("Other Condition");}当m的值为()时,输出“Condition 3”(A)2 (B)0、1 (C)0、1、2 (D)0、1、2、3二、填空题1.跳转语句包括、、和2.switch语句先计算switch后面的的值,再和各语句后的值做比较。

java的初学者练习题

java的初学者练习题

一、Java基础语法1.1. 数据类型int a = 10;double b = 3.14;char c = 'A';boolean d = true;1.2. 变量声明与赋值声明一个整型变量并赋值为100。

声明一个字符串变量并赋值为"Hello, World!"。

声明一个布尔型变量并赋值为false。

1.3. 运算符计算 5 + 6 2 的结果。

计算 (10 / 3) 2 的结果。

将变量 a 的值增加 5。

1.4. 条件语句如果变量 a 大于 10,输出 "a is greater than 10"。

如果变量 b 小于 0,输出 "b is negative"。

如果变量 c 等于 'A',输出 "c is 'A'".1.5. 循环语句使用 for 循环输出 1 到 10 的所有整数。

使用 while 循环输出 1 到 5 的所有整数。

使用 dowhile 循环输出 1 到 3 的所有整数。

二、面向对象编程2.1. 类与对象定义一个名为 Person 的类,包含 name 和 age 两个属性。

创建一个 Person 对象,并设置其 name 为 "John" 和 age 为25。

2.2. 构造方法修改 Person 类,添加一个构造方法,接收 name 和 age 作为参数。

创建一个 Person 对象,并使用构造方法设置其属性。

2.3. 方法在 Person 类中添加一个方法,用于输出对象的 name 和 age。

创建一个 Person 对象,并调用其方法输出信息。

2.4. 继承定义一个名为 Student 类,继承自 Person 类。

在 Student 类中添加一个属性:score。

创建一个 Student 对象,并设置其 name、age 和 score。

java基础50道经典练习题及答案

java基础50道经典练习题及答案

JAVA基础编程练习题【程序1】古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?【程序2】判断101-200之间有多少个素数,并输出所有素数。

程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是【程序3】打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。

例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

【程序4】将一个正整数分解质因数。

例如:输入90,打印出90=2*3*3*5。

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。

【程序5】利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B 表示,60分以下的用C表示。

【程序6】输入两个正整数m和n,求其最大公约数和最小公倍数。

【程序8】求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。

例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

【程序9】一个数如果恰好等于它的因子之和,这个数就称为"完数"。

例如6=1+2+3.编程找出1000【程序10】一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次【程序11】有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?程序分析:可填在百位、十位、个位的数字都是1、2、3、4。

JAVA练习题(第1、2章)

JAVA练习题(第1、2章)
for (i=1;i<10;i++){ for (i=1;i<10;i++){
System.out.print(i+”*”+j+”=”+i*j+””); } System.out.println();
} } }
四、编程题
有一函数:
x
(x<1)
y = 3x-2 (1≤x<10)
4x
(x≥10)
编写一程序,给定x值,输出y值。
$$$ $
public class Test_17_1 { public static void main(String[] args) { int i, j; for (i = 1; i <= 4; i++) { for (j = 1; j <= i; j++) { System.out.print("#" + " "); } System.out.println(); } }
}
public class Test_17_2 { public static void main(String[] args) { int i, j, k; for (i = 0; i < 4; i++) { for (k = 0; k < i; k++) { System.out.print(" "); } for (j = 0; j <= 6 - 2 * i; j++) System.out.print("*"); System.out.println(); } }

JAVA循环语句练习(后面有答案及代码-请在自己答题后再查阅答案)

JAVA循环语句练习(后面有答案及代码-请在自己答题后再查阅答案)

一、选择题1.下列语句序列执行后,m的值是() int a=10,b=3,m=5;if(a==b) m+=a;else m=++a*m;A)15 B)50 C)55 D)52.下列语句序列执行后,k的值是() int i=4,j=5,k=9,m=5;if(i>j||m<k) k++;else k--;A)5 B)10 C)8 D)93.下列语句序列执行后,k的值是() int i=10,j=18,k=30;switch(j-i){case 8: k++;case 9: k+=2;case 10:k+=3;default:k/=j;}A)31 B)32 C)2 D)334.若a和b均是整型变量并已正确赋值,正确的switch语句是()A)switch(a+b);{......}B)switch(a+b*3.0){......}C)switch a{......}D)switch(a%b){......}5.下列语句序列执行后,r的值是()Char ch='8';int r=10;switch(ch+1){case '7': r=r+3;case '8': r=r+5;case '9': r=r+6; break;default: r =r+8;}A)13 B)15 C)16 D)186.设int型变量a、b,float型变量x、y,char型变量ch均已正确定义并赋值,正确的switch语句是()A)switch(x+y){......}B)switch(ch+1){......}C)switch ch{......}D)switch(a+b);{......}7.下列语句序列执行后,k的值是() Int x=6,y=10,k=5;switch(x%y){case 0:k=x*y;case 6:k=x/y;case 12:k=x-y;default:k=x*y-x;}A)60 B)5 C)0 D)548.下列语句序列执行后,r的值是() Char ch='A';int r=6;switch(ch+5){case 'A':r=r+3;case 'B':r=r+5;case 'C':r-=6; break;default:r/=2;}A)11B)3 C)2 D)99.以下for循环的执行次数是()for(int x=0;(x==0)&(x>4);x++);A)无限次 B)一次也不执行 C)执行4次 D)执行3次10.下列语句序列执行后,j的值是()int j=1;for(int i=5;i>0;i-=2)j*=i;A)15 B)1 C)60 D)011.以下for循环的执行次数是()for(int x=0;(x==0)&(x<4);x++);A)无限次 B)一次 C)执行4次 D)执行3次12.下列语句序列执行后,j的值是()int j=2;for(int i=7;i>0;i-=2) j*=2;A)15 B)1 C)60 D)3213.以下由for语句构成的循环执行的次数是()for(int i=0;true;i++);A)有语法错,不能执行 B)无限次 C)执行1次 D)一次也不执行14.下列语句序列执行后,i的值是() int s=1,i=1;while(i<=4){s*=i;i++;}A)6 B)4 C)24 D)515.下列语句序列执行后,j的值是() int j=8,i=6;while(i>4)i-=2;--j;A)5 B)6 C)7 D)816.若有循环:int x=5,y=20;do{y-=x;x+=2;}while(x<y);则循环体将被执行()A)2次 B)1次 C)0次 D)3次17.以下由do-while语句构成的循环执行的次数是()int m=8;do{++m;}while(m<8);A)一次也不执行B)执行1次C)8次D)有语法错,不能执行18.下列语句序列执行后,i的值是()int i=10;do{i/=2;}while(i>1);A)1 B)5 C)2 D)019.下列语句序列执行后,i的值是()int i=10;do{i/=2;}while(i-->1);A)1 B)5 C)2 D)-1二、程序填空1、下面是一个java应用程序(Application),它的功能是在屏幕上输出26个小写英文字母,其中每个字母相隔一个制表符,请完成程序填空。

Java循环和分支练习题

Java循环和分支练习题
continue;
}
System.out.println(i);
}
三、编程题
1.请编写程序完成个人所得税计算。
个税免征额3500元
(工资薪金所得适用)
级数 全月应纳税所得额全月 税率(%) 速算扣除数
1 不超过1,500元 3 0
while(i>0){
System.out.println("value of i:" +i);
}
do{
System.out.println(i);
}while(i<2);
2.
int i=1;
do {
while(i<1){
System.out.print("i is "+i);
2.一在第十次落地时,共经过多少米?第十次反弹多高?
要求:使用循环结构语句实现。
}
a. if条件不能用后置运算符;
b.if条件必须是布尔型,不能使用数值型;
c.else处掉了一个“}”;
d.可以使用break,跳出if分支。
3.下面程序执行后输出的结果是什么?
for(int I=0;I<2;++I){
System.out.println("I is "+I);
2 超过1,500元至4,500元的部分 10 105
3 超过4,500元至9,000元的部分 20 555
4 超过9,000元至35,000元的部分 25 1,005
5 超过35,000元至55,000元的部分 30 2,755


java循环试题及答案

java循环试题及答案

java循环试题及答案# Java循环试题及答案1. 题目:编写一个Java程序,使用for循环计算1到100之间所有整数的和。

答案:```javapublic class SumOfNumbers {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;}System.out.println("Sum of numbers from 1 to 100 is: " + sum);}}```2. 题目:使用while循环实现一个Java程序,要求打印出从1开始的前10个奇数。

答案:```javapublic class OddNumbers {public static void main(String[] args) {int count = 1;int number = 1;while (count <= 10) {System.out.println(number);number += 2;count++;}}}```3. 题目:编写一个Java程序,使用do-while循环计算1到100之间所有整数的乘积。

答案:```javapublic class ProductOfNumbers {public static void main(String[] args) {long product = 1;int i = 1;do {product *= i;i++;} while (i <= 100);System.out.println("Product of numbers from 1 to 100 is: " + product);}}```4. 题目:使用for循环编写一个Java程序,打印出2的幂次方直到结果超过1000。

java循环练习题

java循环练习题

java循环练习题在学习Java编程语言时,掌握循环结构是非常重要的一部分。

通过练习循环题目,可以加深对循环语句的理解以及提高编程能力。

本文将为您提供一些Java循环练习题,帮助您巩固知识并提升编程技巧。

1. 题目一:计算1到100之间所有偶数的和。

解析:使用for循环遍历1到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("1到100之间所有偶数的和为:" + sum);}}```2. 题目二:输出九九乘法表。

解析:使用嵌套的for循环,外层循环控制行数,内层循环控制列数,通过打印输出实现九九乘法表的展示。

```javapublic class MultiplicationTable {public static void main(String[] args) {for (int i = 1; i <= 9; i++) {for (int j = 1; j <= i; j++) {System.out.print(j + " * " + i + " = " + (j * i) + "\t");}System.out.println();}}}```3. 题目三:判断一个数是否为素数。

解析:使用for循环遍历2到该数之间的所有数字,判断是否存在能整除该数的因子。

若存在,则不为素数;否则,为素数。

```javapublic class PrimeNumber {public static void main(String[] args) {int num = 37;boolean isPrime = true;for (int i = 2; i <= Math.sqrt(num); i++) { if (num % i == 0) {isPrime = false;break;}}if (isPrime) {System.out.println(num + "是素数"); } else {System.out.println(num + "不是素数"); }}}```4. 题目四:计算斐波那契数列的前 n 项。

java 关于循环和数组的选择题

java 关于循环和数组的选择题

一、关于循环的选择题1. 下面哪种循环不是Java语言中的循环结构?A. for循环B. if-else循环C. while循环D. do-while循环2. 在Java语言中,以下哪种循环可以在不知道具体循环次数的情况下使用?A. for循环B. if-else循环C. while循环D. do-while循环3. 在Java语言中,以下哪种循环至少会被执行一次?A. for循环B. if-else循环C. while循环D. do-while循环4. 下列哪个语句是正确的?A. for (int i=0; i<10; i++){}B. for (int i=0; i<10; i++){}C. for (i=0; i<10; i++){}D. for (int i=0; i<10, i++){}5. 在Java语言中,以下哪种循环会先执行循环体再判断条件?A. for循环B. if-else循环C. while循环D. do-while循环二、关于数组的选择题1. 在Java语言中,以下哪种声明是正确的数组声明方式?A. int arr[5];B. int[] arr = new int[5];C. arr[5] = new int[];D. int arr[];2. 如何获取数组arr的长度?A. arr.lenB. arr.sizeC. arr.lengthD. arr.count3. 在Java语言中,下列哪种方式是正确的数组初始化方式?A. arr = {1, 2, 3, 4, 5}B. arr = new int[5]{1, 2, 3, 4, 5}C. arr = (1, 2, 3, 4, 5)D. arr = new int[]{1, 2, 3, 4, 5}4. 在Java语言中,以下哪种方式能够遍历数组arr中的元素?A. for (int i=0; i<arr.length; i++){}B. for (int i=0; i<arr.size; i++){}C. for (int i=0; i<arr.count; i++){}D. for (int i=0; i<=arr.length; i++){}5. 在Java语言中,以下哪种操作可以将数组arr中的元素倒序排列?A. Arrays.sort(arr, Collections.reverseOrder());B. Arrays.sort(arr);C. Collections.reverse(Arrays.asList(arr));D. Collections.sort(arr, Collections.reverseOrder());以上就是关于Java语言中循环和数组的一些选择题,请读者认真思考后选择正确的答案。

java 练习题_循环

java 练习题_循环

练习题——循环1. 对数组a[]={30,1,-9,70,25}进行由小到大的排序,并输出最终结果。

//import java.util.Scanner;//对数组a[]={30,1,-9,70,25}进行由小到大的排序,并输出最终结果。

public class LianXi {public static void main(String[] args) {int a[]={30,1,-9,70,25};int b,c=4;for(int j=0;j<c;j++){for(int i=0;i<4;i++){if(a[i]>a[i+1]){b=a[i+1];a[i+1]=a[i];a[i]=b;}}c--;}for(int m=0;m<=4;m++){System.out.print(a[m]+" ");}}}2. 分别编写APPLET和APPLICATION程序,使运行后在屏幕上生成如下的图案。

** * ** * * * ** * * * * * ** * * * * * * * *//import java.util.Scanner;/***分别编写APPLET和APPLICATION程序,使运行后在屏幕上生成如下的图案。

**************************/public class LianXi {public static void main(String[] args) {int a=1;for(int i=0;i<5;i++){for(int j=0;j<a;j++){System.out.print("* ");}a+=2;System.out.println();}}}3. 输出10000以内的所有完全数。

完全数是指等于其所有因子和(包括1但不包括这个数本身)的数。

例如:6=1*2*3 6=1+2+3,则6是一个完全数。

java循环练习题

java循环练习题

java循环练习题for循环练习题1、实现⼀个课程名称和课程代号的转换器:输⼊下表中的课程代号,输出课程的名称。

⽤户可以循环进⾏输⼊,如果输⼊n 就退出系统。

(使⽤do-while循环实现)import java.util.Scanner;public class ClassName {public static void main(String []args){Scanner input=new Scanner(System.in) ;String ke="";do{System.out.println("请输⼊课程代码:");ke =input.nextLine();if(ke.equals("1")){System.out.println("使⽤Java语⾔理解程序逻辑");}else if(ke.equals("2")){System.out.println("使⽤HTML语⾔开发商业站点");}else if(ke.equals("3")){System.out.println("使⽤SQL Server管理和查询数据");}else if (ke.equals("4")){System.out.println("使⽤C#开发数据库应⽤程序");}else if (ke.equals("n")){System.out.println("~~退出系统~~");break;}else {System.out.println("输⼊有误");}}while (true);}}2、本⾦10000元存⼊银⾏,年利率是千分之三。

每过1年,将本⾦和利息相加作为新的本⾦。

JAVA-循环体小练习——ATM取款机

JAVA-循环体小练习——ATM取款机

JAVA-循环体⼩练习——ATM取款机需求描述:假设⼀个简单的ATM机的取款过程为:⾸先提⽰⽤户输⼊密码,假设默认密码为111111,最多只能输⼊3次,超过3次则提⽰⽤户“密码错误,请取卡”,结束交易。

如果⽤户密码正确,再提⽰⽤户选择⾦额,“请输⼊0到6中任意数字选择对应钱数:0-⼿动输⼊⾦额,1-100元, 2-300元,3-500元, 4-1000元, 5-3000元, 6-5000元”。

输⼊数字如果错误,提⽰“输⼊错误,是否继续 Y/N”,选择Y重新提⽰输⼊钱数编号,选择N提⽰“输⼊错误,请取卡!”。

选择数字为1到6,打印对应钱数,并提⽰“是否继续 Y/N”。

选择数字0,ATM机只能输出100元纸币,⾃定义钱数要求最低为100元,最⾼为1000元。

如果⽤户输⼊的⾦额符合上述要求,则打印输出⽤户取的钱数,并提⽰“取款完成,是否继续Y/N”;否则输出⼀句话“⾦额错误,是否继续 Y/N”,如果⽤户输⼊Y,提⽰⽤户重新选择取款⾦额,如果⽤户输⼊ N,打印“交易取消,请取卡!”ps:取款成功后,应该提⽰⽤户是否继续,总取款⾦额不能超过2万【解题思路】1、验证密码 ①密码正确,继续执⾏下⾯操作; ②密码错误3次,return;2、取款操作。

全部包含在 while循环内部。

 ①提⽰选择编号; ②根据编号,给money赋值。

⽤switch结构实现。

1~6:直接给money赋固定值,0:⼿动赋值操作; ③验证取款是否成功。

money-本次取款⾦额,moneySum-本次取款之前的总⾦额 判断moneySum+money是否>20000,3种情况: >2000 本次取款超额,但moneySum之前并不⾜20000,继续下次循环; =2000 取完本次money后,刚好满额。

money可以加到sum上,然后return; <2000 取完本次money后,仍未上限。

money可以加到sum上,继续下次循环。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
【程序2】
题目:判断101-200之间有多少个素数,并输出所有素数。

程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

【程序3】
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。

例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

【程序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的值,重复执行第一步。

【程序5】
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。

/**在循环中,只要除数不等于0,用较大数除以较小的数,将小的一个数作为下一轮循环的大数,取得的余数作为下一轮循环的较小的数,如此循环直到较小的数的值为0,返回较大的数,此数即为最大公约数,最小公倍数为两数之积除以最大公约数。

* /
【程序6】
题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。

例如6=1+2+3.编程找出1000以内的所有完数。

【程序7】
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个; 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。

以后每天早上都吃了前一天剩下的一半零一个。

到第10天早上想再吃时,见只剩下一个桃子了。

求第一天共摘了多少。

【程序8】
题目:企业发放的奖金根据利润提成。

利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润,求应发放奖金总数?
题目:有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
【程序10】
题目:输入某年某月某日,判断这一天是这一年的第几天?
【程序11】
题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。

问第4个人岁数,他说比第3个人大2岁。

问第三个人,又说比第2人大两岁。

问第2个人,说比第一个人大两岁。

最后问第一个人,他说是10岁。

请问第五个人多大?。

相关文档
最新文档