Java.函数-acwing

题目一: n的阶乘

804. n的阶乘 - AcWing题库

代码

java 复制代码
import java.util.Scanner;

public class Main {
    private static int fact(int n) {
        int res = 1;
        for(int i = 1; i <= n; i ++) 
            res *= i;
        
        return res;
    }
    
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int n = sc.nextInt();
        System.out.println(fact(n));
    }
}

题目二:x和y的最大值

805. x和y的最大值 - AcWing题库

代码

java 复制代码
import java.util.Scanner;

public class Main {
    private static int max(int x, int y) {
        if(x > y) return x;
        else return y;
    }
    
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int x = sc.nextInt(), y = sc.nextInt();
        System.out.println(max(x,y));
    }
}

题目三:最大公约数

808. 最大公约数 - AcWing题库

代码

java 复制代码
import java.util.Scanner;

public class Main {
    private static int gcd(int a, int b) {
        while(b != 0) {
            int c = a%b;
            a = b; b = c;
        }
        return a;
    }
    
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt(), b = sc.nextInt();
        
        System.out.println(gcd(a,b));
    }
}

题目四:交换数值

811. 交换数值 - AcWing题库

代码

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int[] a = {sc.nextInt(), sc.nextInt()};
        swap(a);
        System.out.printf("%d %d\n",a[0],a[1]);
    }
    
    private static void swap(int[] a) {
        int t = a[0]; a[0] = a[1]; a[1] = t;
    }
}

题目五:打印数字

812. 打印数字 - AcWing题库

代码

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int n = sc.nextInt(), size = sc.nextInt();
        int[] a = new int[n];
        for(int i = 0; i < n; i ++) 
            a[i] = sc.nextInt();
        
        print1D(a,size);
    }
    
    private static void print1D(int[] a, int size) {
        for(int i = 0; i < size; i ++) 
            System.out.printf("%d ",a[i]);
    }
}

题目六:打印矩阵

813. 打印矩阵 - AcWing题库

代码

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int r = sc.nextInt(), c = sc.nextInt();
        int[][] a = new int[r][c];
        for(int i = 0; i < r; i ++) 
            for(int j = 0; j < c; j ++) 
                a[i][j] = sc.nextInt();
        
        print2D(a,r,c);
    }
    
    private static void print2D(int[][] a, int r, int c) {
        for(int i = 0; i < r; i ++) {
            for(int j = 0; j < c; j ++) {
                System.out.printf("%d ",a[i][j]);
            }
            System.out.println("");
        }
    }
}

题目七:递归求阶乘

819. 递归求阶乘 - AcWing题库

代码

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int n = sc.nextInt();
        System.out.println(fact(n));
    }
    
    private static int fact(int n) {
        if(n == 1) return 1;
        return fact(n-1)*n;
    }
}

题目八:递归求斐波那契数列

820. 递归求斐波那契数列 - AcWing题库

代码

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int n = sc.nextInt();
        System.out.println(solve(n));
    }
    
    private static int solve(int n) {
        if(n == 1 || n == 2) return 1;
        return solve(n-1) + solve(n-2);
    }
}
相关推荐
один but you22 分钟前
从可变参数到 emplace:现代 C++ 性能优化的核心组合
java·开发语言
是码龙不是码农1 小时前
ThreadPoolExecutor 7 个核心参数详解
java·线程池·threadpool
这是程序猿1 小时前
Spring Boot自动配置详解
java·大数据·前端
MY_TEUCK1 小时前
【Java 后端 | Nacos 注册中心】微服务治理原理、选型与注册发现实战
java·开发语言·微服务
测试员周周1 小时前
【Appium 系列】第13节-混合测试执行器 — API + UI 的协同执行
开发语言·人工智能·python·功能测试·ui·appium·pytest
光泽雨2 小时前
c#中的Type类型
开发语言·前端
见叶之秋2 小时前
C++基础入门指南
开发语言·c++
小江的记录本2 小时前
【Java基础】Java 8-21新特性:JDK21 LTS:虚拟线程、模式匹配switch、结构化并发、序列集合(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven
计算机安禾2 小时前
【c++面向对象编程】第42篇:模板特化与偏特化:为特定类型定制实现
开发语言·c++·算法
qq_401700412 小时前
Qt 项目中使用 QSS 的全面总结
开发语言·qt