Java第五周上机练习+作业

上机练习

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

while

packageaaa;

publicclass Test1 {

    /**
     * @paramargs
     */
    publicstaticvoid main(String[] args) {
        // TODO Auto-generated method stub
        int sum=0;
        int i=1;
        while (i<=100){
            if(i%3==0){
                sum+=i;
            }
            i++;
        }System.out.println(sum);
    }

}

 

 

 do while

package practise1;

public class Test4 {

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

}

for

package practise1;

public class Test5 {

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

}

 

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

packageaaa;

publicclass Test2 {

    /**
     * @paramargs
     */
    publicstaticvoid main(String[] args) {
        // TODO Auto-generated method stub
        int i=0;
        while(i<=9){
            if(i!=5)
                System.out.println(i);
            i++;
            }
    }

}

 

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

packagebbb;

publicclass test3 {

    /**
     * @paramargs
     */
    publicstaticvoid main(String[] args) {
        // TODO Auto-generated method stub
        int sum=1;
        int i=1;
        while(i<=5){
            sum*=i;
            i++;
        }
        System.out.println(sum);
    }

}

 

 

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

packagebbb;

importjava.util.Scanner;

publicclass Test4 {

    /**
     * @paramargs
     */
    publicstaticvoid main(String[] args) {
        // TODO Auto-generated method stub
        Scanner input=new Scanner (System.in);
        System.out.println("请输入学生的成绩");
        int grade=input.nextInt();
        while(grade<0||grade>100){
            System.out.println("输入成绩错误");
            grade=input.nextInt();
        }
        System.out.println("输入学生的成绩为"+grade);
    }

}

 

 

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

packagebbb;

publicclass Test5 {

    /**
     * @paramargs
     */
    publicstaticvoid main(String[] args) {
        // TODO Auto-generated method stub
        double i=30000;
        int year=1;
        double z=0;
        while(year<=9&&year>=1){
            i=i*1.06;
            z=z+i;
            year++;
        }
        z=z+30000;
        System.out.println("该员工十年之后的年薪是"+i);
        System.out.println("该员工十年内的总收入是"+z);
    }

}

 

 作业

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

package practise1;

public class Test1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a=100;
        while(a<=999){
            int g=a%10;
            int s=a/10%10;
            int b=a/100;
            if(g*g*g+s*s*s+b*b*b==a)
                System.out.println(a);
                a++;
        }
    }

}

 

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

package practise1;

import java.util.Scanner;

public class Test2 {

    /**
     * @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();
        System.out.println("请输入月");
        int month = input.nextInt();
        System.out.println("请输入日");
        int day = input.nextInt();
        switch (month - 1) {
        case 12:
            day += 31;
        case 11:
            day += 30;
        case 10:
            day += 31;
        case 9:
            day += 30;
        case 8:
            day += 31;
        case 7:
            day += 31;
        case 6:
            day += 30;
        case 5:
            day += 31;
        case 4:
            day += 30;
        case 3:
            day += 31;
        case 2:
            if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
                day += 29;
            } else {
                day += 28;
            }
        case 1:
            day += 31;
        }
        System.out.println("这是该年的第"+day+"");
    }

}

 

 

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

package practise1;

import java.util.Scanner;

public class Test3 {

    /**
     * @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();
        while (a > 0) {
            int b = a % 10;
            System.out.println(b);
            a = a / 10;
        }
    }

}

 

posted @ 2021-04-04 15:00  小Q爱吃巧克力  阅读(69)  评论(0)    收藏  举报