Java循环结构习题
java 关于循环和数组的选择题
![java 关于循环和数组的选择题](https://img.taocdn.com/s3/m/3998a22349d7c1c708a1284ac850ad02df800710.png)
一、关于循环的选择题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语言中循环和数组的一些选择题,请读者认真思考后选择正确的答案。
循环结构习题有答案
![循环结构习题有答案](https://img.taocdn.com/s3/m/1289bd770029bd64793e2c35.png)
第6章循环结构程序设计1.以下叙述正确的是()A、do-while语句构成的循环不能用其它语句构成的循环代替。
B、d o-while语句构成的循环只能用break语句退出。
C、用do-while语句构成的循环,在while后的表达式为非零时结束循环。
D、用do-while语句构成的循环,在while后的表达式为零时结束循环。
答案:D2.以下程序的输出结果是( )A、10,1 9,2B、9,8 7,6C、10,9 9,0D、10,10 9,1main( ){int x=10,y=10,i;for(i=0;x>8;y=++i)printf("%d,%d",x--,y);}答案:D注解:循环执行2次,由x控制循环的执行次数;输出值为两次循环过程中x每次的自减值和y在for语句的第三个表达式中得到的i自增变化后的值。
3.以下程序的输出结果是( )A、2 0B、3 1C、3 2 1D、2 1 0main( ){ int n=4;while(n--) printf("%d ",--n);}答案:A4.以下程序的输出结果是( )A、#*#*#B、#####C、*****D、*#*#*main( ){ int i;for(i=1;i<6;i++){ if(i%2) {printf("#");continue;}printf("*");}printf("\n");}答案:A注解:循环控制变量i的值从1变化到5,i为1、3、5时,i%2为1,if语句的条件为真,则执行if后的子句,输出#,然后执行continue语句,终止本次循环的执行,进入下一轮循环,i为2、4时,i%2为0,if语句的条件为假,则if后的子句并不执行,直接输出*,所以最后的输出为#*#*#。
5.以下程序的输出结果是( )A、编译不通过,无输出B、acegC、acegiD、abcdefghimain( ){ int i;for(i='A';i<'I';i++,i++) printf("%c",i+32);printf(" \n");}答案:B注解:循环控制变量i的取值为A、C、E、G,将它们转化为小写字母的格式输出。
循环结构习题
![循环结构习题](https://img.taocdn.com/s3/m/e6c98e165627a5e9856a561252d380eb629423fe.png)
循环结构习题循环结构一.选择题1.下面程序段int k=2;while (k=0) {printf(“%d”,k);k--;}则下面描述中正确的是。
A)while循环执行10次B)循环是无限循环C)循环题语句一次也不执行D)循环体语句执行一次2.以下程序段的循环次数是。
for (i=2; i==0; ) printf(“%d” , i--) ;A)无限次B)0次C)1次D)2次4.下面程序的输出结果是。
main ( ){ char c=’A’;int k=0;do {switch (c++) {case ‘A’ : k++ ; break ;case ‘B’ : k-- ;case ‘C’ : k+=2 ; break ;case ‘D’ : k%=2 ; continue ;case ‘E’ : k*=10 ; break ;default : k/=3 ;}k++;} while (c<’G’) ;printf (“k=%d”,k) ;}A)k=3 B)k=4 C)k=2 D)k=05.下面程序的输出结果是。
main ( ){ int x=9;for (; x>0; x--) {if (x%3==0) {prin tf(“%d”,--x);continue ;}}}A)741 B)852 C)963 D)8754216.以下不是死循环的程序段是。
A)int i=100; B)for ( ; ; ) ;while (1) {i=i%100+1 ;if (i>100) break ;}C)int k=0; D)int s=36;do { ++k; } while (k>=0); while (s) ; --s ;7.下述程序段的运行结果是。
int a=1,b=2, c=3, t;while (a<b<="" p="" {t="a;">printf(“%d,%d,%d”,a,b,c);A)1,2,0 B)2,1,0 C)1,2,1 D)2,1,18.下面程序的功能是从键盘输入一组字符,从中统计大写字母和小写字母的个数,选择填空。
java循环试题及答案
![java循环试题及答案](https://img.taocdn.com/s3/m/bc62f6560a4c2e3f5727a5e9856a561252d3218c.png)
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循环练习题](https://img.taocdn.com/s3/m/80723b38178884868762caaedd3383c4bb4cb4fc.png)
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循环语句练习(后面有答案及代码,请在自己答题后再查阅答案)](https://img.taocdn.com/s3/m/a1640423376baf1ffc4fadc1.png)
一、选择题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循环练习级答案](https://img.taocdn.com/s3/m/3b6c7cc280eb6294dd886c8a.png)
1、100以内所有偶数的和。
publicclass Course{publicstaticvoid main(String[] args){int num=0;for(int i=0;i<=100;i+=2){num+=i;}System.out.println("sum="+num);}}2、9的阶乘。
publicclass Course{publicstaticvoid main(String[] args){int num=1;int i=1;for(;i<10;i++){num*=i;}System.out.println("sum="+num);}}3、从控台输入一个数num与之前定义的数n进行比较,如果num==n提示”找到了”并跳出循环,如果num<n提示”小了”,如果num>n提示”大了”,并让其重新输入,如果4次都没有猜对,则提示”抱歉,已经没有机会了”。
import java.util.Scanner;publicclass Course{publicstaticvoid main(String[] args){int n = 88;boolean f=false;for(int i=1;i<5;i++){System.out.print("输入一个数字:");Scanner s = new Scanner (System.in);int num = s.nextInt();if(num>n){System.out.println("大了,重输入");}elseif(num<n){System.out.println("小了,重输入");}else{System.out.println("ok");f=true;break;}}if(f==false){System.out.print("没机会了");}}}4、登录功能,从控制台输入用户名及密码,如果用户名及密码与所定义的一致,则登陆成功,否则失败。
java-循环结构的例题
![java-循环结构的例题](https://img.taocdn.com/s3/m/f533330e03020740be1e650e52ea551810a6c970.png)
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 第三章
![考试酷java 第三章](https://img.taocdn.com/s3/m/71b9689cb9d528ea80c7790e.png)
第三章1. 下列循环体执行的次数是()。
int y=2, x=4;while(--x != x/y){ }32.下列()不属于Java语言流程控制结构?赋值语句3.设a、b为long型变量,x、y为float型变量,ch为char类型变量且它们均已被赋值,则下列语句中正确的是()。
switch(ch+1) {}4.下列说法中,不正确的一个是()。
if …else if语句的执行效率总是比switch语句高5.假设a是int类型的变量,并初始化为1,则下列()是合法的条件语句?if(true){}6. 已知如下代码: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”0、1、2、37. 下列循环体执行的次数是()。
int x=10, y=30;do{ y -= x; x++; }while(x++<y--);21.如果用户在一个自定义类中未定义该类的构造方法,系统将为这个类定义一个默认构造方法。
这个方法没有,也没有任何</FILL.TAG>具体语句</FILL.TAG>,不能完成任何操作。
形式参数2.一个类主要包含两个要素:和</FILL.TAG>成员方法<FILL.TAG> 。
数据成员3.定义常量时要用关键字,同时需要说明常量的并指出常量的。
java for循环练习题
![java for循环练习题](https://img.taocdn.com/s3/m/55ccde9032d4b14e852458fb770bf78a65293ad7.png)
java for循环练习题Java是一门广泛应用于软件开发的编程语言,而循环是Java中非常重要的一个概念。
通过循环,我们可以重复执行一段代码,从而实现一些复杂的逻辑和功能。
在这篇文章中,我将为大家分享一些有趣的Java循环练习题,帮助大家更好地理解和掌握循环的用法。
1. 打印九九乘法表九九乘法表是一个经典的练习题,通过循环嵌套可以很方便地实现。
我们可以使用两个嵌套的for循环,外层循环控制行数,内层循环控制列数。
具体代码如下:```javafor (int i = 1; i <= 9; i++) {for (int j = 1; j <= i; j++) {System.out.print(j + " * " + i + " = " + (i * j) + "\t");}System.out.println();}```2. 计算阶乘阶乘是一个常见的数学问题,可以通过循环来计算。
我们可以使用一个for循环,从1开始依次乘以每个数字,最后得到结果。
具体代码如下:```javaint n = 5;int factorial = 1;for (int i = 1; i <= n; i++) {factorial *= i;}System.out.println(n + "的阶乘是:" + factorial);```3. 判断素数素数是只能被1和自身整除的数,判断一个数是否为素数也可以通过循环来实现。
我们可以使用一个for循环,从2开始依次判断是否能被该数整除。
具体代码如下:```javaint num = 17;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. 打印菱形图案打印菱形图案是一个稍微复杂一些的练习题,可以通过循环嵌套和控制空格数量来实现。
java循环测试题
![java循环测试题](https://img.taocdn.com/s3/m/5473beb970fe910ef12d2af90242a8956becaa06.png)
java循环测试题Java循环测试题选择题1.下面哪种循环结构可以用于不确定循环次数的情况?– A. for循环– B. while循环– C. do-while循环– D. switch循环2.在for循环中,以下哪个部分是可选的?– A. 初始化语句– B. 条件表达式– C. 循环体– D. 迭代语句3.下面哪个循环在条件判断之前执行至少一次循环体?– A. for循环– B. while循环– C. do-while循环– D. switch循环4.在for循环中,哪个部分用于控制循环变量的增减?– A. 初始化语句– B. 条件表达式– C. 循环体– D. 迭代语句填空题1.Java中,用于将控制流程转移到循环体的开头的关键字是break。
2.下面的代码会打印出什么结果?int i = 0;while (i < 5) {(i + " ");i++;}答案:0 1 2 3 4简答题1.请简要说明for循环的工作原理。
答:for循环由三个部分组成,分别是初始化语句、条件表达式和迭代语句。
初始化语句在循环开始前执行一次,用于初始化循环变量。
条件表达式在每次循环开始前进行判断,如果为true,则执行循环体;如果为false,则跳出循环。
循环体是需要重复执行的代码块。
迭代语句在每次循环结束后执行,用于控制循环变量的增减。
循环体执行完后,程序会跳到迭代语句,然后再次进行条件判断,直到条件表达式为false,退出循环。
2.请简要说明do-while循环和while循环的区别。
答:do-while循环和while循环的最大区别在于条件判断的位置。
do-while循环是先执行一次循环体,然后再进行条件判断;而while循环是先进行条件判断,再执行循环体。
这意味着,do-while循环至少会执行一次循环体,而while循环可能一次都不执行。
另外,do-while循环的条件判断在循环体的后面,因此循环体至少会执行一次,然后再根据条件判断是否继续执行循环。
java循环经典题目
![java循环经典题目](https://img.taocdn.com/s3/m/ccdc3ae129ea81c758f5f61fb7360b4c2e3f2add.png)
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循环练习及答案](https://img.taocdn.com/s3/m/693cf63c2e60ddccda38376baf1ffc4ffe47e2dc.png)
java循环练习及答案1、实现一个课程名称和课程代号的转换器:输入下表中的课程代号,输出课程的名称。
用户可以循环进行输入,如果输入n就退出系统。
(使用do-while循环实现)publicclassa2{publicstaticvoidmain(string[]args){scannerscanner=newscanner(system.in);string ke="";do{system.out.println("请输入代码:");ke=scanner.next();if(ke.equals("1")){system.out.println("采用java语言认知程序逻辑");if(ke.equals("2")){system.out.println("采用html语言研发商业站点");if(ke.equals("3")){system.out.println("采用sqlserver管理和查阅数据");}if(ke.equals("4")){system.out.println("采用c#研发数据库应用程序");if(ke.equals("n")){}}while(true);}system.out.println("失效!");break;2、本金10000元存入银行,年利率是千分之三。
每过1年,将本金和利息相加作为新的本金。
计算5年后,获得的本金是多少?(使用for循环实现)classa3{}publicstaticvoidmain(string[]args){doublemon=10000;for(inti=0;i3、谋整数1~100的递增值,但建议UX21LI2677E所有个位为3的数。
Java基础一层循环_练习题
![Java基础一层循环_练习题](https://img.taocdn.com/s3/m/51facb72767f5acfa0c7cd2c.png)
1. 输出1-10与5相乘的结果
2. 用程序计算1-100的和,并输出
3. 求出所有的水仙花数,水仙化数为3位数,并且每位上的数字的立方和等于该数本身
4. 把100-200之间不能被3整除的数输出
5. 将1998-2020年之间的闰年年份输出
6. 循环接受本班学生的考试成绩,每次接受完一个学生的分数,询问用户是否要继续,答
案是‘1’时继续接受,否则,停止接受,最后输出所有学生的总分和平均分
7. 计算用户输入的数字的阶乘,例如用户输入的是5,则计算5的阶乘,5的阶乘为
5*4*3*2*1
8. 用代码实现一个猜数字的小游戏,假设要猜的目标数字是8,先可以提示用户猜的数在
0-10之间,然后循环接受用户输入的数字,如果用户输入的数字比目标数字小,就提示”小了,继续猜”,继续接受用户输入的数字,继续比较,如果大了,就”大了,继续猜”,如果用户在5次以内猜对了,就提示”你真聪明,猜对了!”并结束循环,如果猜了5次还没有猜对,就提示”
真笨,不跟你玩了”,并结束循环
9. 求1-100之间所有3的倍数的和(用关键字continue和不用continue两种方法做)
10. 上面题6改为,本班一共30个学生,循环接收学生的开始成绩,如果用户输入答案是非’y’,
则停止接受,如果输入的一直是’1’,但学生人数达到30也停止接收。
java 多循环编程题
![java 多循环编程题](https://img.taocdn.com/s3/m/22fa6f14f11dc281e53a580216fc700abb685239.png)
java 多循环编程题含解答共5道题目1:打印九九乘法表```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(i + " * " + j + " = " + (i * j) + "\t");}System.out.println();}}}```题目2:打印菱形```javapublic class DiamondPattern {public static void main(String[] args) {int n = 5; // 可以根据需要调整菱形的大小for (int i = 1; i <= n; i++) {for (int j = 1; j <= n - i; j++) {System.out.print(" ");}for (int k = 1; k <= 2 * i - 1; k++) {System.out.print("*");}System.out.println();}for (int i = n - 1; i >= 1; i--) {for (int j = 1; j <= n - i; j++) {System.out.print(" ");}for (int k = 1; k <= 2 * i - 1; k++) {System.out.print("*");}System.out.println();}}}```题目3:计算斐波那契数列```javapublic class FibonacciSeries {public static void main(String[] args) {int n = 10; // 可以根据需要调整斐波那契数列的长度int firstTerm = 0, secondTerm = 1;System.out.println("Fibonacci Series:");for (int i = 1; i <= n; i++) {System.out.print(firstTerm + ", ");int nextTerm = firstTerm + secondTerm;firstTerm = secondTerm;secondTerm = nextTerm;}}}```题目4:判断一个数是否为素数```javapublic class PrimeNumberCheck {public static void main(String[] args) {int num = 17; // 可以根据需要调整要检查的数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 + " 是素数。
Java循环语句练习题
![Java循环语句练习题](https://img.taocdn.com/s3/m/aa2a5487690203d8ce2f0066f5335a8102d2668d.png)
Java循环语句练习题
以下练习题是在学习过程中收集的,通过练习题加深对Java的循环、选择等控制结构的理解。
简易难度:
1. 输⼊⼀个数,判断是奇数还是偶数。
2. 计算1+2+3+……+100的和。
3. 在1~100内找出能被4整除的数。
4. 从键盘输⼊⼀个班5个学⽣的分数,求和并输出。
5. .for循环输出1-100之间能被5整除的数,并每⾏输出三个值
6. .编程求:1!+2!+3!+…10!
中等难度:
1. 判断⼀个数是否是素数。
2. 求整数1~100的累加值,但要求跳过所有个位为3的数
3. 输⼊⼀个正整数N,判断该数是不是质数,如果是质数输出"N是⼀个质数",否则输出"N不是质数"。
提⽰:质数的含义:除了1和它本
⾝不能被任何数整除。
4. 在控制台上输出九九乘法表。
5. 在控制台上⽤*号输出等腰三⾓形(5⾏)。
6. 输⼊10个数,按顺序从⼩到⼤排序。
7. 本⾦10000元存⼊银⾏,年利率是千分之三。
每过1年,将本⾦和利息相加作为新的本⾦。
计算5年后,获得的本⾦是多少?
8. 打印出100~999之间的所有"⽔仙花数"。
所谓"⽔仙花数",是指⼀个3位数,其各位数字⽴⽅和等于该数本⾝。
例如:153是⼀个"⽔仙
花数",因为153=13+53+33。
9. 分别输⼊年、⽉、⽇,输出此⽇期是⼀年中的第⼏天,如:
10. 输⼊⼀串字符串,按照顺序排序。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A,求1到100以内的素数.要求每10个数换一行。
1.public class SuShu{
2.public static void main(String[] args) { //求1到100的素数,实际就是求2
到99的素数,要知道的知识点是除2以为,所有的偶数都是素数。
3.inti,y;//必须在for语句之前定义,可以不对变量赋值
4.int t=0;
5.for(i=2;i<=99;i++){
6. for( y=2;y<=i;y++)
7. { if(i%y==0)
8. break;
9. }
10.if(y==i){
11.System.out.print(" "+y);
12.t++;
13.}
14. if(t%10==0){
15.System.out.println();
16. }
17.
18.
19.}
20.}
21.}
B,一个自然数是素数,且它的数字位置任意对换后形成的数仍未素数,这种数叫做绝对素数,例如13 和31。
编写一个程序,显示100以内的所有绝对素数。
分析,由题意可以知道必须是两位数字,而且只能有1、3、7、9组合,个位为5的能被5整数,不是素数。
publicclass Demo{
publicstaticvoid main(String[] args) {
for(int i=10;i<=100;i++)
{
if(isSushu(i)&&isSushu(conveter(i)))
{
System.out.print(i+" ");
}
}
}
staticboolean isSushu(int i)//i是否为素数
{
int j=2; //用2到i-1之间的任一整数去整除
for(;j<i;j++)
{
if(i%j==0)returnfalse;
}
returntrue;
}
static int conveter(int i)//个位和十位数转换
{
int ge=i%10; //个位
int shi=i/10;//十位
return ge*10+shi;
}
}
分析代码如下,程序写了三个方法,而且这三个方法都是静态方法,无需对象就可以调用,第一个方法是判断循环遍历的数是否是素数isSushu(int i),
第二个方法是用来进行数字位置任意对换的方法
第三个方法是主方法,也就是程序运行的入门main开始,通过for循环遍历我们需要的数字,关键是if里面的条件要明白
第一个条件isSushu(i)是判断循环遍历的数是素数吗?挑选时是素数的数
第二个条件是一个复合条件,isSushu(conveter(i)),首先通过方法convertre()进行数字位置的对换,对换后,判断对换后的数字是否是素数,如果是,则输出,如果不是,重新判断。
C.一个三位数除以11的商等于他各位数字的平方和
public class PingFanHe {
public static void main(String[] args) {
inti,j,n,s;
for(i=100;i<=999;i++){
n=i;
j=n/11;
s = 0;
while(n!=0){
s=s+(n%10)*(n%10);//第一次求得个位数
n/=10;//第一次循环求得两位数
}
if(j==s){
System.out.print(i+" ");
}
}
}
}
此程序结构有不足之处,请仔细发现。
现在加一个条件一个三位数除以11的商等于他各位数字的平方和且其中至少有两位数字相同。
publicclass Test{
publicstaticvoid main(String[] args) { int n,a,b,c;
for(n=100;n<=999;n++)
{ a=n/100;//求百位
b=n%100/10;//求十位
c=n%10;
/*if(n/11!=a*a+b*b+c*c)
continue;
if(a==b||b==c||a==c)
System.out.print(n+" ");*/
//或者将两个if改写成如下
if(n/11==a*a+b*b+c*c)&&(a==b||b==c||a==c) System.out.print(n+" ");
}
}
}
、。