个别编程语言在OJ平台上的输入输出方式

OJ 平台输入输出

一. C/ C++

输入

  • scanf()
  • gets()
  • getchar()

输出

  • printf()
  • puts()
  • putchar()

C++

  • cin >>
  • cout <<

二. Java

输入

import java.util.Scanner;

public class Main {
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        if(scan.hasNext()){   //后面是否还有输入
        	String str = scan.nextLine();  //类似gets()
        	Integer a = scan.nextInt(10);  //类似scanf("%d",&a) 参数其实不用填(默认10),10是十进制(好像
        }
        //更多Scanner玩法等待你的探索  值得一提的是 Java有个大数类 scanner也可以读
        /*  CODE  */
        scan.close();
    }
}

输出

public class Main {
    public static void main(String[] args){
        /*  CODE  */
        System.out.println(xxx);  //类似于cout << xxx << endl
        System.out.printf(format_args, args)  //不多说 printf
        System.out.print(xxx);  //类似于cout << xxx 
    }
}

输入输出方法并不唯一,但是我觉得 Scanner类+System.out 比较好用且足够适应绝大多数情景。

三. Python 3

输入

a = input(show_arg)	#(OJ中参数一般为空)读一行数据当字符串,类似于gets()
a,b = map(int, input().strip().split(' '))	#读取两个以空格分隔的整数,类似于scanf("%d %d",&a,&b),个别oj报错
array = map(int, input().strip().split(' '))	#类似上一个,结果是个数组

输出

print ("哇哦",a,b)	# print函数参数并不固定,类似于cout << "哇哦" << a << b << endl

四. PHP

PHP变量不需要定义。

<?php
fscanf(STDIN,"%d",$a);  //输入,类似scanf,只是第一个参数必须为STDIN
/*  CODE  */
echo $a;  //输出的方式之一
?>

疑问

  • OJ平台中,SQL输入输出语句?

文章仅供初学者参考,本人水平有限,涉及编程语言不全,方式不唯一。

下一篇文章:[BUUCTF] 洞拐洞拐洞洞拐 ——CSDN

posted @ 2023-01-14 18:10  天翔RT  阅读(127)  评论(0编辑  收藏  举报