您的位置:首页 > 其它

在线笔试中一般的标准输入输出及常见问题

2017-03-22 10:39 232 查看
C:

// 输入一组数据并输出,也可用gets()和puts()
int a,b;
scanf("%d %d”,&a,&b);
printf("%d %d\n”,a,b);

//输入多组数据并输出
int a[100],b[100],i;
while(scanf("%d %d",&a[i],&b[i])!=EOF)
{
printf("%d %d\n",a[i],b[i]);
i++;
}


整体形式

#include <stdio.h>
int main(){
int m;
scanf("%d", &m);
printf("%d\n", m);
return 0;
}


C++:

// 输入一组数据并输出
int a, b;
cin>>a>>b;
cout<<a<<b<<endl;

// 输入多组数据并输出
int a, b;
while(cin>>a>>b)
cout<<a<<b<<endl;


整体形式:

//在工程中使用这句,笔试可不使用
#include "stdafx.h"

#include<iostream>
int main(){
int m;
cin>>m;
cout<<m<<endl;
return 0;
}


Java:

//基本语句
Scanner in = new Scanner(System.in);
String name = in.nextLine();//读一行
String word = in.next();//读一个数据,空格为分隔符
int i = in.nextInt();//读一个int
double d =s.nextDouble();//读一个double
while(in.hasNext()){}//判断输入是否结束
while(in.hasNextLine()){}//判断输入是否结束

//用split分隔
//在java.lang包中有String.split()方法,返回是一个数组
//* ^ : | . \(6种)为转义字符,前面加用“\\”
String[] aa = "aaa|bbb|ccc".split("\\."); //正确的结果
String[] bb = "aaa\bbb\ccc".split("\\\"); //正确的结果
String[] bb = "aaa*bbb*ccc".split("\\*"); //正确的结果
String[] cc = "aaa bbb ccc".split(" "); //用空格分离


//输入一组数据并输出
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
System.out.printf("%s\n",str);
sc.close();

// 输入多组数据并输出
Scanner sc = new Scanner(System.in);
String str;
while(sc.hasNextLine()){
str = sc.nextLine();
System.out.printf("%s\n",str);
}
sc.close();


整体形式:

import java.util.Scanner;

public class Main()
{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
String str ;
while(sc.hasNextLine()){
str = sc.nextLine();
System.out.printf("%s\n",str);
}
sc.close();
}
}


Python:

//输入一组数据并输出
str=raw_input()
print str

//输入多组数据并输出
import sys
for line in sys.stdin:
for value in line.split():
print(value)


以下补充常见问题:

链接:https://www.nowcoder.com/discuss/8632

来源:牛客网

1.循环处理输入输出;

2.存储一组数据的map,set等容器记得清空;

3.输出格式:最后一行的换行或者最后空格,解决方法:将空格和换行放在第二个输出的前面,用flag标记,flag = 0,如果是第一个则不输出,flag++,每次判断flag是否为0即可;

4.通常来说一般的系统1s能跑的算法量级是不足1e8,这是以C/C++为标准的,其他语言乘个时间倍数,比如题目n = 1e5,那么我就可以很敏感的知道我的算法需要一个 O(n) 或者 O(nlogn)。平方复杂度直接拜拜!

5.因为版本或者运行平台(Linux/Windows)的不了解,尽量用确定能编译通过的方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: