第五周上机练习+作业

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

for循环

package hw;

public class hw1 {

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

}

 

 while循环

package hw;

public class hw1 {

    /**
     * @param args
     */
    public static void 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 hw;

public class hw1 {

    /**
     * @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);
    }

}

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

package hw;

public class hw2 {

    /**
     * @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 hw;

import java.util.Scanner;

public class hw3 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("输入数字");
        Scanner input=new Scanner(System.in);
        int x=input.nextInt();    
        int i=1;
        int sum=1;
        while(i<=x){
            sum*=i;
            i++;
        }
        System.out.println(sum);

    }

}

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

package hw;

import java.util.Scanner;

public class hw4 {

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

    }

}

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

package hw;

public class hw5 {

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

    }

}

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

package hw;

public class hw6 {

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

    }

}

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

package hw;

import java.util.Scanner;

public class hw7 {

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

}

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

package hw;

import java.util.Scanner;

public class hw8 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("输入一个四位数");
        Scanner input=new Scanner(System.in);
        int x=input.nextInt();
        int ge=x%10;
        int shi=x%100/10;
        int bai=x%1000/100;
        int qian=x/1000;
        int sum=qian+bai*10+shi*100+ge*1000;
        System.out.println(sum);

    }

}

 

posted @ 2021-04-04 17:22  计算机1905石红岩  阅读(63)  评论(0)    收藏  举报