计蒜客-Java题库练习

2017-06-23 code

说明:本部分为笔者对计蒜客Java编程题库的解答,均已在平台上验证,能通过编译并正常运行,仅供参考。


Java练习题库

1. A+B+C问题

输入为一行,包括了用空格分隔的三个整数 A、B、C(数据范围均在-40 ~ 40 之间)。输出为一行,为“A+B+C”的计算结果。

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
     Scanner input= new Scanner(System.in);
        int i= input.nextInt( );
        int j= input.nextInt( );
        int k= input.nextInt( );
        System.out.println( i+j+k);
    }
}

2. 整除问题

  • 输入: 包括两个由空格分开的整数 M 和 N(1≤M,N≤500)。

  • 输出格式: 输出包括一行,如果 M 可以被 N 整除就输出YES,否则输出NO(结果大小写敏感)。

import java.util.Scanner;
public class Main{
    public static void main( String[] args){
        Scanner input= new Scanner(System.in);
        int M= input.nextInt( );
        int N= input.nextInt( );
        if(M%N==0)
           System.out.println("YES"); 
        else
             System.out.println("NO");  
        }
    }

3.判断质数

  • 输入包括一行,为一个整数 N(1<N≤1000)
  • 输出包括一行,如果整数 N为质数,那么输出YES;如果 N不是质数,那么输出NO。
import java.util.Scanner;
public class Main{
    public static void main( String[] args){
        Scanner input= new Scanner(System.in);
        int N= input.nextInt( );
        int M=0;
        for(int i=1; i<N;i++){
          if(N%i==0)
              M++;
        }
        if(M>1)
            System.out.println("NO");
        else
            System.out.println("YES");
        }   
    }

4.简单斐波那契

斐波那契数列是一种非常有意思的数列,由 00和 11 开始,之后的斐波那契系数就由之前的两数相加。用数学公式定义斐波那契数列则可以看成如下形式:

F(0)=0;
F(1)=1;
F(n)=F(n-1)+F(n-2)
  • 输入格式: 输入包括一行,包括一个整数 N(0≤N≤50);
  • 输出格式: 输出包括一行,包括一个整数,为斐波那契数列的第 N 项的值。
import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner input=new Scanner(System.in);
        int n= input.nextInt();
        System.out.println(Function(n));
    }
    static int Function(int n){
        if(n==0)
            return 0;
        if(n==1)
            return 1;
        else
            return Function(n-1)+Function(n-2);
    }

5.整数转换成罗马数字

给定一个整数 numnumnum,将整数转换成罗马数字。如 1,2,3,4,5 对应的罗马数字分别为I,II,III,IV,V等。

  • 输入格式:第一行输入一个整数 num(1≤num≤3999);
  • 输出格式:输出 numnumnum 对应的罗马数字。
import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner input= new Scanner(System.in);
        int n= input.nextInt();
        System.out.println(function(n));
    }
    static String function(int num) {
        String c[][]={
            {"","I","II","III","IV","V","VI","VII","VIII","IX"},
            {"","X","XX","XXX","XL","L","LX","LXX","LXXX","XC"},
            {"","C","CC","CCC","CD","D","DC","DCC","DCCC","CM"},
            {"","M","MM","MMM"}
        };
        String roman=((c[3][num / 1000 % 10])+(c[2][num / 100 % 10])+(c[1][num / 10 % 10])
       +(c[0][num % 10]));
         
        return roman;
    }
}
Comments
Write a Comment