java系列:控制结构练习题

171 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第16天,点击查看活动详情

本章作业

1.编程实现如下功能

某人有100000元,没经过一次路口,需要缴费,规则如下

当现金>50000时,每次交5%

当现金<=50000时,每次交1000

编程计算该人可以经过多少次路口,要求使用while break方式完成

public class HomeWork01 {
    public static void main(String[] args) {
//        1.编程实现如下功能
//
//        某人有100000元,没经过一次路口,需要缴费,规则如下
//
//    当现金>50000时,每次交5%
//
//    当现金<=50000时,每次交1000
//
//        编程计算该人可以经过多少次路口,要求使用while break方式完成
        double money = 100000;
        int num = 0;
        boolean b = true;
        while (money > 0){
            if (money > 50000){
                money *=0.95;
                num++;
                System.out.println("正在经过第" + num + "次路口,还剩" + money + "元钱");
​
            }
            else if (money <= 50000){
                money = money - 1000;
                num++;
                System.out.println("正在经过第" + num + "次路口,还剩" + money + "元钱");
                if (money < 1000){
                    break;
​
                }
            }
        }
​
​
    }
}

2.实现判断一个整数,属于那个范围:大于零,小于零,等于零

import java.util.Scanner;
public class HomeWork02 {
    public static void main(String[] args) {
//        实现判断一个整数,属于那个范围:大于零,小于零,等于零
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入要判断的整数:");
        int num = scanner.nextInt();
        if (num > 0){
            System.out.println("大于零");
        }else if (num == 0){
            System.out.println("等于零");
        }else {
            System.out.println("小于零");
        }
    }
}

3.判断一个年份是否为闰年

前面谢过了不再重复

4.判断一个数是否为水仙花数,所谓水仙花数是指一个三位数,其个位上数字立方和等于其本身,例如:153 = 1 * 1 * 1 + 3 * 3 * 3 + 5 * 5 * 5

import java.util.Scanner;
public class HomeWork04 {
    public static void main(String[] args) {
//        4.判断一个数是否为水仙花数,所谓水仙花数是指一个三位数,
//        其个位上数字立方和等于其本身,
//        例如:153 = 1 * 1 * 1 + 3 * 3 * 3 + 5 * 5 * 5
        Scanner scanner = new Scanner(System.in);
​
        System.out.println("请输入数字:");
        int num = scanner.nextInt();
        int gewei = num % 10;
        int shiwei = (int)(num % 100) / 10;
        int baiwei = (int)(num / 100);
//        System.out.println(gewei);
//        System.out.println(shiwei);
//        System.out.println(baiwei);
        if (gewei * gewei * gewei + shiwei * shiwei * shiwei + baiwei * baiwei * baiwei == num){
            System.out.println(num + "是水仙花数");
        }
        else {
            System.out.println("您输入的数不是水仙花数");
        }
    }
}

5.看看下面代码输出什么

image-20221021203545937.png

6.输出1-100之间的不能被五整除的数,每五个一行

public class HomeWork06 {
    public static void main(String[] args) {
​
​
//        6.输出1-100之间的不能被五整除的数,每五个一行
​
        int num = 0;
        for (int i = 1; i <= 100; i++){
            if (i % 5 != 0){
                if (num % 5 == 0){
                    System.out.println();
                }
                System.out.print(i + " ");
                num++;
            }
        }
​
    }
​
}

7.输出小写的a-z以及大写的Z-A

public class HomeWork07 {
    public static void main(String[] args) {
//        7.输出小写的a-z以及大写的Z-A
        char c = 'a';
        char C = 'Z';
​
        for (int i = 0; i < 26; i++){
            System.out.println(c);
            c++;
        }
        for (int i = 0; i < 26; i++){
            System.out.println(C);
            C--;
        }
​
​
    }
}

8.求出1-1/2-1/3……1/100的和

public class HomeWork08 {
    public static void main(String[] args) {
​
//        8.求出1-1/2-1/3……1/100的和
​
        double sum = 0;
        for (int i = 1; i <= 100; i++){
            if (i % 2 != 0){
                sum += 1.0/i;
            }else {
                sum -= 1.0/i;
            }
​
            }
        System.out.println("sum = " +
                sum);
​
        }
​
    }

9.求1 + (1+2) + (1+2+3) + (1+2+3+4)……+(1+2+3+……+100)的结果

public class HomeWork09 {
    public static void main(String[] args) {
​
        int sum = 0;
​
        for (int i = 1; i <= 100; i++){
            for (int j = 1; j <= i; j++){
                sum += j;
            }
​
        }
        System.out.println(sum);
    }
}