用java语言做hdu题目之输入多行数据的方法

原创 2015年07月10日 18:09:10

如果你在做hdu 1073,hdu 1075就会发现这个问题。

嘿嘿!这是给新手看的,,,毕竟这题让我太纠结了,wa了不知道多少次了,心都塞了大哭

后来我发现是我的输入方式不对,大家可以对比输入的数据,当然前面两题我都发在博客里了,可以在搜索栏搜索到。


错误的输入:

错误1)


import java.util.Scanner;

public class p1075 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 输入字典的部分
		String s = new String();
		s = sc.nextLine();//  这里可能有制表符
		s = sc.nextLine();// 覆盖start一行数据
		while (!s.equals("END")) {
			s += "\n";// 用换行符就可以单行显示,避免数据不显示
			s += sc.nextLine();
		}
		System.out.println("++s++" + s);
	}
}


没有输出结果----




错误2)

import java.util.Scanner;

public class p1075 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 输入字典的部分
		String s = new String();
		s = sc.nextLine();//  这里可能有制表符
		s = sc.nextLine();// 覆盖start一行数据
		while (!s.equals("END")) {
			s += "\n";// 用换行符就可以单行显示,避免数据不显示
			s += sc.nextLine();
			System.out.println("1" + s);
		}
		System.out.println("++s++" + s);
	}
}

输出结果正确





错误3)


import java.util.Scanner;

public class p1075 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 输入字典的部分
		String s = new String();
		s = sc.nextLine();//  这里可能有制表符
		s = sc.nextLine();// 覆盖start一行数据
		while (!s.equals("END")) {
			s += "\n";// 用换行符就可以单行显示,避免数据不显示
			s += sc.nextLine();
			System.out.println("1" + s);
		}
		System.out.println("++s++" + s);
		// 再输入
		String s2 = new String();
		s = sc.nextLine();
		s = sc.nextLine();
		while (!s2.equals("END")) {
			s2 += "\n";// 用换行符就可以单行显示,避免数据不显示
			s2 += sc.nextLine();
		}
		System.out.println("++s2++" + s2);
	}
}

第二个入错误




正确的输入:


import java.util.Scanner;

public class P1075a {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String s1 = "";// 接输入的字符
		String a = "";
		s1 = sc.nextLine();
		s1 = sc.nextLine();
		int count = 0;
		while (!s1.equals("END")) {
			if (count != 0) {
				a += "\n";
			}
			count++;
			a += s1;
			s1 = sc.nextLine();
		}
		System.out.println("a: " + a);
	}

}








相关文章推荐

java scanner 输入多行

Scanner scanner = new Scanner(System.in); while(scanner.hasNext()){ String str = scanner.next()...

Java 输入多行字符串或者多个int数值

java 输入多行字符串或者多个int数值

编程技巧系列(7)java中从控制台输入多行数据 按回车键输入空行结束

java中从控制台输入多行数据 按回车键输入空行结束

java中从控制台输入多行数据 按回车键输入空行结束

这篇博文是用Windows Live Writer写的,看看效果 下面是以前写的程序:java中从控制台输入多行数据 按回车键输入空行结束 1: Scanner scanner = new S...
  • brian512
  • brian512
  • 2014年12月10日 11:47
  • 25500

Java使用Scanner读取多行输入跳出问题

源代码如下: Scanner in = new Scanner(System.in); System.out.println("Pls insert Tit...

java怎样一次从控制台中接收多行数据?

java怎样一次从控制台中接收多行数据? 主要功能代码如下: package test; import java.util.ArrayList; import java.uti...

ACM之Java输入输出

一、Java之ACM注意点 1. 类名称必须采用public class Main方式命名 2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错误,所以在我看来好多OJ系统做的是非...

JAVA中在OJ上怎么实现多组输入

代码: import java.util.Scanner; public class Main { public static void main(String[] args) { Sca...

ACM学习历程2——ACM题目中常用的输入输出方式

由于ACM竞赛题目的输入数据和输出数据一般有多组(不定),并且格式多种多样,所以,如何处理题目的输入输出是对编程者最基本的要求。 (一)第一类输入:输入不说明有多少个Input Block,以EOF...

ACM题目中输入数据的处理(C++版)

ACM题目中输入数据的处理(C语言版)见:http://blog.csdn.net/sxhelijian/article/details/8978794  ACM竞赛题目的输入数据常要求有多组,并且格...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用java语言做hdu题目之输入多行数据的方法
举报原因:
原因补充:

(最多只允许输入30个字)