zoukankan      html  css  js  c++  java
  • Java机试--输入输出

    牛客 - 输入输出 练习题:

    https://ac.nowcoder.com/acm/contest/320#question

    import java.util.Scanner;//util.Scanner
    public class Main{//class类名
        public static void main(String[] args){//public static void main()  //括号里面:String[] args
            Scanner sc= new Scanner(System.in);//Scanner类,新建对象sc  //括号里:System.in
            while(sc.hasNext()){//循环输入:sc.hasNext()==true
                int x1=sc.nextInt();//下一个Int: sc.nextInt()
                int x2=sc.nextInt();
                //sc.nextLine();
                int s=x1+x2;
                System.out.println(s);//输出用:System.out.println()
            }
        }
    }

    import java.util.Scanner;
    public class Main{
        public static void main(String[] args){
            Scanner sc= new Scanner(System.in);
            while(true){
                int n=sc.nextInt();
                if(n==0)break;
                int s=0;
                for (int i=0;i<n;i++){
                    int temp=sc.nextInt();
                    s+=temp;
                }
                System.out.println(s);
            }
        }
    }

    import java.util.Scanner;
    public class Main{
        public static void main(String[] args){
            Scanner sc=new Scanner(System.in);
            while(sc.hasNextLine()){//hasNextLine()按行判断
                String[] s=sc.nextLine().split(" ");//.nextLine后面要有括号 //后面接上split(" ")
                int len=s.length;//String数组也属于基本的类型,使用无括号的.length
                int sum=0;
                for (int i=0;i<len;i++){
                    int temp=Integer.valueOf(s[i]);//从行里面(String数组)里选取 //然后使用Integer.valueOf()转换字符串为数字
                    sum+=temp;
                }
                System.out.println(sum);
            }
        }
    }

     

    import java.util.Scanner;
    import java.util.Arrays;//引入 util.Arrays
    public class Main{
        public static void main(String[] args){
            Scanner sc=new Scanner(System.in);
            int n=sc.nextInt();
            String[]s=new String[n];//new String后面不是圆括号,而是方括号[] //可以使用n这个已获得的变量
            for(int i=0;i<n;i++){
                s[i]=sc.next();//
            }
            Arrays.sort(s);//使用.sort()排序
            for (int i=0;i<n;i++){
                System.out.print(s[i]);
                if(i!=n-1)System.out.print(" ");
            }
        }
    }

    import java.util.Scanner;
    import java.util.Arrays;
    public class Main{
        public static void main(String[] args){
            Scanner sc=new Scanner(System.in);
            while(sc.hasNextLine()){//
                String[] s=sc.nextLine().split(" ");
                int len=s.length;
                Arrays.sort(s);//直接用Arrays.sort()对已有的String数组进行排序
                for (int i=0;i<len;i++){
                    System.out.print(s[i]);
                    if(i!=len-1)System.out.print(" ");
                    else System.out.println();//不空格,就换行
                }
            }
        }
    }

    import java.util.Scanner;
    public class Main{
        public static void main(String[] args){
            Scanner sc=new Scanner(System.in);
            while(sc.hasNext()){//为什么要用hasNext(),不用hasNextLine(): 因为输入描述里面,没收是按行给,可能全部在一行里面
                long x1=sc.nextLong();//整数,可能是长整数  //要用nextLong() 而不是nextInt()
                long x2=sc.nextLong();//nextLong/nextInt/nextLine...而直接next,是String类型;
                long sum=x1+x2;
                System.out.println(sum);
            }
        }
    }

    输入输出 总结


    基础输入:  .next()   .hasNext()两个系列

    sc.next()    //String

    sc.nextLine()    //一行,形式为String

    sc.nextInt()  sc.nextDouble()

    复杂输入:  substring + split 伺候

    例1

    输入是 [1,2,0,0,2,1]

    需要转换成数组

    //由于输入的是String类型,所以需要转换
    String str = sc.nextLine();
    String[] strs = str.substring(1,str.length()-1).split(",");//先去掉头尾的方括号;再去掉逗号;
    //用的时候需要循环,将String[]转换为int[]

    例2

    输入是  5,6,8,26,50,48,52,55,10,1,2,1,20,5:3

    需要转换成数组,和冒号后面的一个width;

    import java.util.Scanner;
    public class Main{
        public static void main(String[] args){
            Scanner sc = new Scanner(System.in);
            String string = sc.nextLine();
            String[] strs = string.substring(0,string.length()-2).split(",");
            int size = strs.length;
            int[] nums = new int[size];
            for(int i=0; i<=size-1; ++i){
                nums[i] = Integer.valueOf(strs[i]);
                System.out.println("nums[i] = " + nums[i]);
            }
            int width = Integer.valueOf(string.substring(string.length()-1,string.length()));
            double sum = 0;
            for(int i = 0; i<=width-1; ++i){
                sum += nums[i];
            }
            double maxRatio = 1;
            for(int i=0; i<size-width; ++i){
                double old = sum;
                sum = sum-nums[i]+nums[i+width];
                double ratio = sum/old;
                maxRatio = Math.max(maxRatio,ratio);
            }
            maxRatio -= 1;
            maxRatio *= 100;
            System.out.printf("%.2f", maxRatio);//printf
            System.out.println("%");
        }
    }
    //5,6,8,26,50,48,52,55,10,1,2,1,20,5:3
    //475.00%

    输出指定格式


    见上方 %.2f 的例子

  • 相关阅读:
    构建TensorFlow数据流图
    Python小练习:复制操作
    Python小练习:列表的相关操作
    【Jave】接入极光推送 ------- 封装极光推送工具类
    jenkins邮件-使用变量定制化html邮件报告
    十六进制的颜色转变为rgb,设置透明度,通用方法
    一. Go微服务--隔离设计
    7.23 学习笔记
    7.22 学习笔记
    8.28正睿CSP七连测day1
  • 原文地址:https://www.cnblogs.com/qyf2199/p/12590097.html
Copyright © 2011-2022 走看看