様々な言語での標準入出力をまとめていきたいと思います。
随時言語を追加していきます。
目次
注意
C,C++に関しては
#include <stdio.h> //c
#include <iostream> //c++
をヘッダに書くことは前提としています。
CのものはもちろんC++でも作動し、こちらの方が高速なことが多いです。
入力
1行に一つの値
Python3
s = input() #s:string
i = int(input()) #i:int
f = float(input()) #f:float
Python2
s = raw_input() #s:string
N = input() #入力を式として解釈
C
scanf("%c", &c); //c:char
scanf("%d", &i); //i:int(10進数)
scanf("%f", &f); //f:float
scanf("%s", s); //s:文字列配列
C++
std::cin >> a;
1行にスペース区切りで複数の値をリストに
Python3
l = input().split() #文字列で入力 l:list
l = list(map(int, input().split())) #整数に変換 l:list
l = [int(i) for i in input().split()] #同上 リスト内包表記を用いたもの
#mapとリスト内包表記のどちらが速いかは場合により異なる
Python2
l = raw_input().split() #文字列で入力 l:list
l = map(int, raw_input().split()) #整数に変換 l:list
C
for(int i=0,i<N,i++) scanf("%d", &l[i]); //スペースを自動的に区切りとして認識する
C++
std::cin >> a; //遅い
1行にスペース区切りで複数の数値を変数に
Python
a, b, c = map(int,input().split())
C
scanf("%d%d%d", &i, &j ,&k); //スペースを自動的に区切りとして認識する
出力
Python2
print a
print a, #改行をスペースに変更
print(a) #かっこはあってもなくても良い
Python3
print(a) #かっこは必要
print(a, b, c) #複数出力(スペース区切り)
print(a, b, c, sep=',') #区切りを変更
print(a, end=' ') #最後に出力する文字を変更
C
printf("%s %s", "Hello", "world"); //'Hello, world'
printf("%c",'a'); //char
printf("%f", 3.14); //float
printf("%d", 334); //int(10進)
printf("%10s", "I'm fine."); //文字幅(10)指定
printf("%.2f", 3.14159); //"3,14" 小数点以下桁数(2)指定 この二つは同時設定可
printf("%.2e", 114.514); //"1.15e+02" 指数表示
printf("%05d", 34); //"00034" 0詰め
printf("%-10s", "Hello"); //左づめ
printf("%+d", 10); //"+10" 符号表示
C++
std::cout << a << std::endl; //改行あり 遅い
std::cout << a << '\n'; //改行あり 速い
std::cout << a; //改行なし