java第五次上机练习+作业

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

package 作业0405;

public class 上机练习 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //分别使用for循环,while循环,do循环求1到100之间所有能被3整除的整数的和
        //while语句
        int sum1=0;
        int i1=1;
        while (i1 < 100) {
            if (i1 % 3==0 ) {
                sum1+=i1;
            }
            i1++;
        }
        System.out.println("sum1="+sum1);
        //do-while语句
        int sum2=0;
        int i2=1;
        do {
            if (i2 % 3==0) {
                sum2+=i2;
            }
            i2++;
        } while (i2 < 100);
        System.out.println("sum2="+sum2);
        //for语句
        int sum3=0;
        for (int i3 = 1; i3 < 100; i3++) {
            if (i3 % 3==0) {
                sum3+=i3;
            }
        }
        System.out.println("sum3="+sum3);    


    }

}

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

package jf;

public class jf1 {

    /**
     * @param args
     */
    public static void 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(知识点:循环语句)

package jf;

import java.util.Scanner;

public class jf3 {

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

}

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

package jf;

import java.util.Scanner;

public class jf4 {

    /**
     * @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();
        while (i<0||i>100) {
            System.out.println("输入错误,重新输入");
            i=input.nextInt();
        }
        System.out.println("ok");

    }

}

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

package 作业0405;

public class 上机练习3 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        double nx=30000,sum=0;
        int i=1;
        while (i <= 10) {
            nx=nx+nx*0.06;
            sum+=nx;
            i++;
        }
        System.out.println("十年后的年薪"+nx);
        System.out.println("十年总年薪"+sum);
    }

}

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

package 作业0405;

public class 作业1 {

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

    }

}

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

package 作业0405;

import java.util.Scanner;

public class 作业2 {

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

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

package 作业0405;

import java.util.Scanner;

public class 作业3 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner input = new Scanner(System.in);
        System.out.println("请输入一个四位数的整数:");
        int num = input.nextInt();
         while(num>0){
                System.out.print(num%10);
                num=num/10;
            }
    }

}

 

posted @ 2021-04-05 14:47  15*  阅读(235)  评论(0编辑  收藏  举报