题目就是依次输入五句话,然后将它逆序输出,我写了一段代码,但是输出有问题。直接上程序,请指点下。谢谢~~这是我写的
import java.util.Scanner;
import java.util.Arrays;
public class Two {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String talk[] = new String[5];
System.out.println("请输入5句话");
for(int i=0; i<talk.length; i++) {
System.out.println("第" + (i+1) + "句话:");
talk[i] = input.next();
}
//Arrays.sort(talk);

System.out.println("逆序输出5句话");
for(int i=talk.length-1; i>=0; i--) {
System.out.println(talk[i]);
} }


}然后运行输入五句话:
请输入5句话
第1句话:
在java中
第2句话:
数据类型分两种
第3句话:一种是基本数据类型第4句话:另一种是引用数据类型第5句话:要清楚这两种数据类型的区别但是运行后结果逆序输出5句话
要清楚这两种数据类型的区别qu     //这里怎么会有拼音呢“qu”?
另一种是引用数据类型yi          //还有这里             
一种是基本数据类型sh                 //还有这里  
sh数据类型分两种                       //还有这里  
在java中

解决方案 »

  1.   

    读写交错就会出这个问题,
    将行
    System.out.println("第" + (i+1) + "句话:");
    去掉即可。
      

  2.   

    have a try
    talk[i] = input.next(); -> talk[i] = input.nextLine();
      

  3.   

    其实程序是没有错的。
    你在命令行执行一下就知道了,没问题。
    在Eclipse中执行输入输出交互可能就会有问题,但输入之前,如果总是先用鼠标点一下,以获得输入焦点,就不会有问题。
      

  4.   

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;public class Demo {
    public static void main(String args[]) throws IOException{
    BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
    String str[] = new String[5];
    for(int i = 0;i<5;i++){
    str[i] = buf.readLine();
    }
    for(int j = 4;j>=0;j--){
    System.out.println("第"+j+"句:");
    System.out.println(str[j]);
    }
    }}
    这样可以正确输出啊。