2021-01-05

Java作业基础知识梳理--2020-12-03

  1. Java中常用的赋值运算符
    += 将该运算符左边的数值加上右边的数值, 其结果赋值给左边变量本身
    -= 将该运算符左边的数值减去右边的数值, 其结果赋值给左边变量本身
    *= 将该运算符左边的数值乘以右边的数值, 其结果赋值给左边变量本身
    /= 将该运算符左边的数值整除右边的数值, 其结果赋值给左边变量本身
    %= 将该运算符左边的数值除以右边的数值后取余,其结果赋值给左边变量本身

  2. Java注释:
    分为单行注释,多行注释(块注释),文档注释
    注释可以提高代码可读性,方便后期代码维护,
    方便程序员间的交流沟通生成帮助文档。
    同时注释不能长篇大论,也不能过于简单。

  3. switch语句
    switch中的值只能是整数、枚举、字符、字符串
    不可使用long、float、double、boolean作为它的数据类型

  4. 交换三个值(代码):

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int a = scan.nextInt();
        int b = scan.nextInt();
        int tmp = a;
        a = b;
        b = tmp;
        System.out.println("a = " + a);
        System.out.println("b = " + b);
    }
}

      
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

求三个数中的最值(代码):

public static void main(String[] args) {
    int a = 4;
    int b = 2;
    int c = 3;
    int max = 0;
    int min = 0;
    if (a > b && a > c){
        max = a;
    }
    else if (b > a && b > c){
        max = b;
    }
    else
        max = c;
    if (a < b && a < c) {
        min = a;
    }
    else if (b < a && b < c) {
        min = b;
    }
    else
        min = c;
    System.out.println("max = " + max);
    System.out.println("min = " + min);
}

      
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  1. 编写程序数一下 1到 100 的所有整数中出现多少个数字9
public static void main(String[] args) {
    int count = 0;
    for (int i = 1; i < 100; i++) {
        if(i % 10 == 9) {
            count++;
        }else if(i / 10 == 9) {
            count++;
        }
    }
    System.out.println(count);
}

      
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  1. 输出 1000 - 2000 之间所有的闰年
public static void main(String[] args) {
    for(int year = 1000;year <= 2000;year++){
        if((year % 4 == 0 && year % 100 != 0) || year % 400 ==0){
            System.out.println(year);
        }
    }
}

      
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  1. 打印 1 - 100 之间所有的素数
public static void main(String[] args) {
    int count = 0;
    for (int i = 2; i < 101; i++) {
        for (int j = 2; j <= i; j++) {
            if (i % j == 0 && i != j) 
                break;
            if (j == i) {
                if (count % 5 == 0)
                    System.out.println();
                System.out.print(j + " ");
                count++;
            }
        }
    }
    System.out.println("\n素数有" + count + "个");
}

      
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  1. 给定一个数字,判定一个数字是否是素数
public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    int num = scanner.nextInt();
    for (int j = 0; j <= num; j++) {
        int i = 2;
        for (; i <= Math.sqrt(j); i++) {
            if (num % i == 0) {
                System.out.println("不是素数");
                break;
            }
        }
        if (i > Math.sqrt(num)) {
            System.out.println("是素数");
            break;
        }
    }
}

      
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  1. 根据输入的年龄, 来打印出当前年龄的人是少年(低于18), 青年(19-28), 中年(29-55), 老年(56以上)(这道题好像有瑕疵,没得满分,有缘人帮忙看看
public static void main(String[] args) {
    while(true){
        System.out.println("请输入要判断的年龄");
        Scanner in=new Scanner(System.in);
        int age=in.nextInt();
        if(age<0){
            System.out.println("输入有误,重新输入");
            continue;
        }
        if(age>=0&&age<=18){
            System.out.println("少年");
            break;
        }
        if(age>=19&&age<=28){
            System.out.println("少年");
            break;
        }
        if(age>=29&&age<=55){
            System.out.println("中年");
            break;
        }
        else{
            System.out.println("老年");
            break;
        }
    }
}

      
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  1. 打印 X 图形
public static void printX(int m) {
    for (int x = 1; x <= m; x++) {
        for (int y = 1; y <= m; y++) {
            if (x == y || x + y == m + 1) {
                System.out.print("*");
            } else {
                System.out.print(" ");
            }
        }
        System.out.println();
    }
}
public static void main(String[] args) {
    printX(10);
}

      
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  1. 完成猜数字游戏 ,用户输入数字,判断该数字是大于,小于,还是等于随机生成的数字,等于的时候退出程序。
public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    Random random = new Random();
    int ranNum = random.nextInt(100) + 1;
    while (true){
        int num = scanner.nextInt();
        if (num < ranNum) {
            System.out.println("小");
        }else if