Java第三次作业

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

For

import java.util.Scanner;

 

public class ctt {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        int sum=0;

        int i=1;

        for (; i < 101; i++) {

            if(i%3==0) {

                sum=sum+i;

            }

       

           

        }

        System.out.println(sum);

 

    }

 

}

 

 

While

import java.util.Scanner;

 

public class ctt {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        int sum=0;

        int i=1;

        while(i<101) {

            if(i%3==0) {

                sum=sum+i;

                i++;

            }

            else {

                i++;

            }

        }

        System.out.println(sum);

 

    }

 

}

 

 

Do….while

import java.util.Scanner;

 

public class ctt {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        int sum=0;

        int i=1;

        do {

            if(i%3==0)

                sum=sum+i;

                i++;

           

        }

            while(i<=100) ;

        System.out.println(sum);

 

    }

 

}

 

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

import java.util.Scanner;

 

public class ctt {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        for (int i = 0; i <= 9; i++) {

            if(i!=5)

                System.out.println(i);

           

        }

 

    }

 

}

 

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

import java.util.Scanner;

 

public class ctt {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        Scanner input=new Scanner(System.in);

        System.out.println("请输入n的值");

        int i=1;

        for (int n = input.nextInt(); n >0; n--) {

            i=i*n;

           

        }

        System.out.println("n的阶乘为:"+i);

 

    }

 

}

 

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

import java.util.Scanner;

 

public class ctt {

 

    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||a>100) {

            System.out.println("输入错误,重新输入");

            a=input.nextInt();

        }

        System.out.println("输入合法:");

 

    }

 

}

 

 

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

import java.util.Scanner;

 

public class ctt {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        double a=30000;

        double sum=0;

        for (int i = 2; i <=10; i++) {

            a=a+a*0.06;

            sum=sum+a;

           

        }

        System.out.println("十年后的年薪是"+a);

        System.out.println("未来十年的总收入是"+(sum+30000));

 

    }

 

}

 

作业:

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

import java.util.Scanner;

 

public class ctt {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        for (int i = 100; i <=999; i++) {

            int ge=i%10;

            int shi=i%100/10;

            int bai=i/100;

            if(i==ge*ge*ge+shi*shi*shi+bai*bai*bai)

                System.out.println(i);

        }

 

    }

 

}

 

 


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

import java.util.Scanner;

 

public class ctt {

 

    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;

        for (int i=1; i<month; i++) {

            if (i==4||i==6||i==9||i==11) {

                sum=sum+30;

               

            }

            else if(i==2) {

                if (year%4==0&&year%100!=0||year%400==0) {

                    sum=sum+29;

                   

                } else {

                    sum=+28;

 

                }

               

            }

            else sum=sum+31;

           

        }

        sum=sum+day;

        System.out.println(year+"年中的第"+sum+"天");

 

    }

 

}

 

 

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

import java.util.Scanner;

 

public class ctt {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        Scanner sc=new Scanner(System.in);

        System.out.println("请输入一个四位整数:");

        int x=sc.nextInt();

        if (x>999&&x<=9999) {

            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);

        } else {

            System.out.println("错误");

 

        }

       

 

    }

 

}

 

 

posted @ 2023-04-05 21:44  未步乘风  阅读(43)  评论(0)    收藏  举报