Java 循环语句练习题(1)

来源:互联网 发布:mac版matlab安装教程 编辑:程序博客网 时间:2024/04/26 23:41

1、for循环输出1 到100

package com.hz.loop;/** * 1、for循环输出1 到100 * @author ztw * */public class Practice01 {public static void main(String[] args) {    for(int i=1;i<=100;i++){        System.out.println(i);    }}}

2、while循环输出1-100

package com.hz.loop;/** * 2、while循环输出1-100 * @author ztw * */public class Practice02 {public static void main(String[] args) {    int i=1;    while(i<=100){        System.out.println(i);        i++;    }}}

3、循环输出以下结果:
2*5=10
4*10=40
6*15=90
……
?*100=?

package com.hz.loop;/** * 3、循环输出以下结果: *  2*5=10 *  4*10=40 *  6*15=90 *  …… *  ?*100=? * @author ztw * */public class Practice03 {public static void main(String[] args) {    /*     * 可以看做是乘数和被乘数以每次递增2和5的一种规则变化     */    int a=2;    int b=5;    do{    System.out.println(a+" * "+b+" = "+(a*b));    a=a+2;    b=b+5;    }    while(b<=100);}}

4、要求用户输入一个0到2之间的整数,
如果用户输入0输出“你出的是石头”,
如果用户输入1就输出“你出的是剪刀”,
如果用户输入的是2就输出“你出的是布”,
然后再问是否要继续出拳,
如果回答“y”就重复以上过程,
否则结束程序。

package com.hz.loop;import java.util.Scanner;/** * 4、要求用户输入一个0到2之间的整数, * 如果用户输入0输出“你出的是石头”, * 如果用户输入1就输出“你出的是剪刀”, * 如果用户输入的是2就输出“你出的是布”, * 然后再问是否要继续出拳, * 如果回答“y”就重复以上过程,否则结束程序。 * @author ztw * */public class Practice04 {public static void main(String[] args) {    Scanner sc = new Scanner(System.in);    System.out.println("输入一个0到2之间的整数:");    int number = sc.nextInt();    for(;;){    if(number>=0&&number<=2){        //定义一个switch语句判断输出对应的值        switch(number){        case 0:            System.out.println("你出的是石头");            break;        case 1:            System.out.println("你出的是剪刀");            break;        case 2:            System.out.println("你出的是布");            break;        default:            break;        }        System.out.println("然后再问是否要继续出拳?(y/?)");        String choice = sc.next();        if(choice.equals("y")||choice.equals("Y")){        }else{            break;        }    }else{        System.out.println("请输入一个0到2之间的整数!");    }    }}}

5、让计算机随机产生10个0到2之间的数,
如果产生的是0就输出“生成了一只白猪,我好怕怕”,
如果产生的是1就输出“生成了一只黑猪,我喜欢”
如果产生的是2就输出“生成了一只红猪,有下酒菜了”。

package com.hz.loop;import java.util.Random;/** * 5、让计算机随机产生10个0到2之间的数, * 如果产生的是0就输出“生成了一只白猪,我好怕怕”, * 如果产生的是1就输出“生成了一只黑猪,我喜欢” * 如果产生的是2就输出“生成了一只红猪,有下酒菜了”。 * @author ztw * */public class Practice05 {public static void main(String[] args) {    Random rd = new Random();    //让计算机随机产生10个0到2之间的数    for(int i=0;i<10;i++){         int number = rd.nextInt(2);         switch(number){         case 0:             System.out.println("生成了一只白猪,我好怕怕");             break;         case 1:             System.out.println("生成了一只黑猪,我喜欢");             break;         case 2:             System.out.println("生成了一只红猪,有下酒菜了");             break;             default:                 break;         }    }}}

6、计算2000年1月1日到2008年1月1日相距多少天。(注意闰年)

package com.hz.loop;/** *  * 6、计算2000年1月1日到2008年1月1日相距多少天。(注意闰年) *  * @author ztw * */public class Practice06 {public static void main(String[] args) {    int sum = 0;    int day;    for(int i=2000;i<2008;i++){        //判断该年份是否是闰年        if((i%4==0&&i%100!=0)||(i%400==0)){            day=366;        }else{            day=365;        }        sum = sum+day;    }    System.out.println(sum);}}

7、循环输入大于0的数字进行累加,直到输入的数字为0,就结束循环,并最后输出累加的结果。

package com.hz.loop;import java.util.Scanner;/** * 7、循环输入大于0的数字进行累加,直到输入的数字为0,就结束循环,并最后输出累加的结果。 * @author ztw * */public class Practice07 {public static void main(String[] args) {    int sum = 0;    Scanner sc = new Scanner(System.in);    //循环输出    while(true){        System.out.println("请输入一个数:");        int number = sc.nextInt();        if(number==0){            break;        }else{            sum = sum+number;        }    }    System.out.println("累加的结果:"+sum);}}

8、我行我素购物管理系统>生日问候
请输入今天的日期(月/日<用两位数表示:): 05/29
请输入客户生日:08/09
然后判断是否今天生日
是否继续(y/n)
如果是y就重复以上步骤,否则退出程序*/

package com.hz.loop;import java.util.Scanner;/** * 8、我行我素购物管理系统>生日问候  * 请输入今天的日期(月/日<用两位数表示:): 05/29 * 请输入客户生日:08/09  * 然后判断是否今天生日是否继续(y/n) * 如果是y就重复以上步骤,否则退出程序 * @author ztw * */public class Practice08 {public static void main(String args[]){     Scanner sc = new Scanner(System.in);    for(;;){    System.out.println("请输入今天的日期(月/日<用两位数表示:):");    String toDay = sc.next();    System.out.println("请输入客户生日:");    String brithday = sc.next();    if(toDay.equals(brithday)){        System.out.println("生日快乐,送你一个华为手机!");        break;    }    System.out.println("然后判断是否今天生日是否继续(y/n):");    String choice = sc.next();    if(choice.equals("y")||choice.equals("Y")){    }else{        break;    }    }}}

9、计算用户输入的日期离1900年1月1日相距多少天。(注意闰年,每个月份天数不一样)

package com.hz.loop;import java.util.Scanner;/** * 9、计算用户输入的日期离1900年1月1日相距多少天。(注意闰年,每个月份天数不一样) * @author ztw * */public class Practice09 {public static void main(String[] args)  {     Scanner sc = new Scanner(System.in);    System.out.println("请输入年份:");    //定义用户输入年份的变量year    int year = sc.nextInt();    System.out.println("请输入月份:");    //定义用户输入月份的变量month    int month = sc.nextInt();    //定义一个初始化变量sum表示相距0天    int sum = 0;    for(int i=1900;i<year;i++){        //判断输入的年份是否为闰年        if((i%4==0&&i%100!=0)||(i%400==0)){            sum+=366;        }else{            sum+=365;        }    }    for(int i=1;i<month;i++){        //判断输入的月份是否为大月        if(i==1||i==3||i==5||i==7||i==8){            sum+=31;        }else if(i==2){            //判断输入的年份是否为闰年            if((year%4==0&&year%100!=0)||year%400==0){                sum+=29;            }else{                sum+=28;            }        //不是大月        }else{            sum+=30;        }    }    //输出计算结果    System.out.println("用户输入的日期离1900年1月1日相距"+sum+"天");    }}
1 0