Java第五次练习+作业

练习

1.分别使用for循环,while循环,do循环求1到100之间所有能被3整除的整数的和。(知识点:循环语句)

for

package com.gd.choice;

import java.util.Scanner;

public class lianxi1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner input=new Scanner(System.in);
        System.out.println("请输入两个数");
        int a=input.nextInt();
        int b=input.nextInt();
        int i=a+1;
        int sum=0;
        for(;i<=b-1;i++){
            if(i%3==0){
                sum=sum+i;
            }
            else{
                
            }
        }
        System.out.println("和为"+sum);
    

    }

}

 

 while

package com.gd.choice;

import java.util.Scanner;

public class lianxi1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner input=new Scanner(System.in);
        System.out.println("请输入两个数");
        int a=input.nextInt();
        int b=input.nextInt();
        int i=a+1;
        int sum=0;
        while(i<=b-1){
            i++;
            if(i%3==0){
                sum=sum+i;
            }
            else{
                
            }
        }
        System.out.println("和为"+sum);

    

    }

}

 

 do

package com.gd.choice;

public class lianxi1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int i=1;
        int sum=0;
        do{
            if(i%3==0){
                sum+=i;
                i++;
            }else{
                i++;
            }
            }while(i<=100);
        System.out.println("和为"+sum);

    

    }

}

 

 2.输出0-9之间的数,但是不包括5。(知识点:条件、循环语句)

package com.gd.choice;

public class lianxi2 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        for(int i=1;i<10;i++){
            if(i!=5){
                System.out.println(i);
            }else{
                
            }
        }


    }

}

 

 3.编写一个程序,求整数n的阶乘,例如5的阶乘是1*2*3*4*5(知识点:循环语句)

package com.gd.choice;

import java.util.Scanner;

public class lianxi3 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner input=new Scanner(System.in);
        System.out.println("请输入一个数");
        int i=input.nextInt();
        int sum=1;
        for(int n=1;n<=i;n++){
            sum=sum*n;
        }
        System.out.println("阶乘为"+sum);


    }

}

 

 4.编写一个程序,输入任意学生成绩,如果输入不合法(<0或者>100),提示输入错误,重新输入,直到输入合法程序结束(知识点:循环语句)

package com.gd.choice;

import java.util.Scanner;

public class lianxi4 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner input=new Scanner(System.in);
        for(int i=0;;i++){
            System.out.println("请输入学生成绩");
            double x=input.nextDouble();
            if(x<0||x>100){
                System.out.println("输入成绩错误,请重新输入");
            }else{
                System.out.println("该学生成绩为"+x);
                break;
            }
        }


    }

}

 

 

5.假设某员工今年的年薪是30000元,年薪的年增长率6%。编写一个Java应用程序计算该员工10年后的年薪,并统计未来10年(从今年算起)总收入。(知识点:循环语句)

package com.gd.choice;

public class lianxi5 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        double m=0;
        double a=30000;
        for(int i=1;i<=10;i++){
            a+=a*0.06;
            m+=a;
        }
        System.out.println("十年后的年薪为"+a);
        System.out.println("未来十年的总收入为"+m);

    }

}

 

 作业

1.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。(知识点:循环语句、条件语句)

package com.gd.choice;

public class Homework1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a,b,c;
        System.out.println("三位数中所有的水仙花数为:");
        for(int n=100;n<=999;n++){
            a=n/100;
            b=n%100/10;
            c=n%10;
            if(a*a*a+b*b*b+c*c*c==n){
                System.out.println(n);
            }
        }
        
        
    }

}

 

 2.输入年月日,判断这是这一年中的第几天(知识点:循环语句、条件语句)

package com.gd.choice;

import java.util.Scanner;

public class Homework2 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner input=new Scanner(System.in);
        System.out.println("请输入年月日:");
        int year=input.nextInt();
        int month=input.nextInt();
        int day=input.nextInt();
        int a = 0;
        for (int i = 1; i < month; i++) {
            switch (i) {
            case 4:
            case 6:
            case 9:
            case 11:
                a += 30;
                break;
            case 2:
                if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
                    a += 29;
                else
                    a += 28;
                break;
            default:
                a += 31;
                break;
            }
        }
        a += day;
        System.out.println("这天是" + year + "的第" + a + "");

    }

}

 

 3.由控制台输入一个4位整数,求将该数反转以后的数,如原数为1234,反转后的数位4321(知识点:循环语句、条件语句)

package com.gd.choice;

import java.util.Scanner;

public class homework3 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner input = new Scanner(System.in);
        System.out.println("请输入一个四位整数");
        int i = input.nextInt();
        if (i >= 10000 || i < 1000) {
            System.out.println("输入有误!");
        } else {
            int a = i / 1000;
            int b = i % 1000 / 100;
            int c = i % 100 / 10;
            int d = i % 10;
            int sum=a+b*10+c*100+d*1000;
            System.out.print("反转后为:" + sum);
        }

    }

}

 

 

 

posted @ 2021-04-02 21:34  宇文92  阅读(60)  评论(0编辑  收藏  举报