第五周Java作业

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

package ktlx;

public class Lx1 {

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

    }
}


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

package ktlx;

public class Lx2 {

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

    }

}


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

package ktlx;

import java.util.Scanner;

public class Lx3 {

    /**
     * @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 q=1;
        for(int s=1;s<=a;s++){
        q*=s;    
            
        }
        System.out.println(q);

    }

}

 


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

package ktlx;

import java.util.Scanner;

public class Lx4 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        while(true){
        Scanner input=new Scanner(System.in);
        System.out.println("输入一个成绩");
        int a=input.nextInt();
        if(a>0&&a<=100){
            System.out.println("成绩有效");
            break;
        }
        else{
            System.out.println("成绩无效,重新输入");
        }
        }

    }

}

 


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

package ktlx;

public class lx5 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        double a=30000;
        double b=0.06;
        int s=1;
        double sum=0;
        while(s<=9){
            sum+=a;
            a=a*(b+1);
            
            s++;
        }
        System.out.println("第十年年薪为"+a);
        System.out.println("总和为"+sum);

    }

}

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

package homework5;

public class Zy1 {

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

    }

}

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

package homework5;

import java.util.Scanner;

public class Zy2 {

    /**
     * @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(), b = input.nextInt(), c = input.nextInt(), s = c;
        if (a % 4 == 0 && a % 100 != 0 || a % 400 == 0) {
            switch (b) {
            case 1:
                s = c;
                break;
            case 2:
                s = 31 + c;
                break;
            case 3:
                s = 31 + 29 + c;
                break;
            case 4:
                s = 31 + 29 + 31 + c;
                break;
            case 5:
                s = 31 + 29 + 31 + 30 + c;
                break;
            case 6:
                s = 31 + 29 + 31 + 30 + 31 + c;
                break;
            case 7:
                s = 31 + 29 + 31 + 30 + 31 + 30 + c;
                break;
            case 8:
                s = 31 + 29 + 31 + 30 + 31 + 30 + 31 + c;
                break;
            case 9:
                s = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + c;
                break;
            case 10:
                s = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + c;
                break;
            case 11:
                s = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + c;
                break;
            case 12:
                s = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + c;
                break;

            }
        }
        else {
            switch (b) {
            case 1:
                s = c;
                break;
            case 2:
                s = 31 + c;
                break;
            case 3:
                s = 31 + 28 + c;
                break;
            case 4:
                s = 31 + 28 + 31 + c;
                break;
            case 5:
                s = 31 + 28 + 31 + 30 + c;
                break;
            case 6:
                s = 31 + 28 + 31 + 30 + 31 + c;
                break;
            case 7:
                s = 31 + 28 + 31 + 30 + 31 + 30 + c;
                break;
            case 8:
                s = 31 + 28 + 31 + 30 + 31 + 30 + 31 + c;
                break;
            case 9:
                s = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + c;
                break;
            case 10:
                s = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + c;
                break;
            case 11:
                s = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + c;
                break;
            case 12:
                s = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + c;
                break;
            }

        }
        System.out.println("这是这一年中的第"+s+"天");

    }
}

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

package homework5;

import java.util.Scanner;

public class Zy3 {

    /**
     * @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 < 1000 || a > 9999) {
            System.out.println("输入错误");
            a = input.nextInt();
        }
        int g = a % 10;
        int s = a % 100 / 10;
        int b = a % 1000 / 100;
        int q = a / 1000;
        System.out.println("反转后的数为" + g + s + b + q);

    }

}

posted @ 2021-04-06 22:52  一土它小木登子  阅读(113)  评论(0)    收藏  举报