黑马程序员技术交流社区

标题: java2 [打印本页]

作者: 一步步    时间: 2013-11-15 12:44
标题: java2
package test;
import java.io.*;
import java.util.*;
public class b {

        public static void main(String[] args)throws IOException {
                int max=0;
                int min=0;
                BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
                String s=null;
                while((s=br.readLine())!=null)
                {
                        if(s.equals("over"))
                                break;
                for (int i=1;i<=5;i++){
               
                int x=Integer.parseInt(s);
                   if (i==1) {
                           min=x;
                           max=x;
                   }else{
                           if (x>max) max=x;
                           if (x<min) min=x;
                           }
                }
                }
                   System.out.println("最大整数为"+max);
                   System.out.println("最小整数为"+min);

        }

}
这段代码为什么不能输出大小写?


作者: spiderman    时间: 2013-11-15 15:00
  1. package test;
  2. import java.io.*;
  3. import java.util.*;
  4. public class b {

  5.         public static void main(String[] args)throws IOException {
  6.                 int max=0;
  7.                 int min=0;
  8.                 BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
  9.                 String s=null;
  10.                 while((s=br.readLine())!=null)//注意:这里还有个循环,你输入完一个数据,按下回车,这里就会循环一次
  11.                 {
  12.                         if(s.equals("over"))
  13.                                 break;
  14.                 for (int i=1;i<=5;i++){//你设置这个for循环没有意义,每读取一个数据,都会执行5次
  15.                
  16.                 int x=Integer.parseInt(s);
  17.                    if (i==1) {//每读取一个数据,都会把当前数值赋给max,min,这样就起不到记录第一个数据的作用了。
  18.                            min=x;
  19.                            max=x;
  20.                    }else{
  21.                            if (x>max) max=x;
  22.                            if (x<min) min=x;
  23.                            }
  24.                 }
  25.                 }
  26.                    System.out.println("最大整数为"+max);
  27.                    System.out.println("最小整数为"+min);

  28.         }

  29. }
复制代码
正确的写法应该是
  1. package test;
  2. import java.io.*;
  3. import java.util.*;
  4. public class b {

  5.         public static void main(String[] args)throws IOException {
  6.                 int max=0;
  7.                 int min=0;
  8.                                 int count=1;
  9.                 BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
  10.                 String s=null;
  11.                                
  12.                 while((s=br.readLine())!=null)
  13.                 {
  14.                         if(s.equals("over"))
  15.                                 break;
  16.                                                        
  17.                                    int x=Integer.parseInt(s);
  18.                    if (count==1)
  19.                                    {
  20.                            min=x;
  21.                            max=x;
  22.                    }
  23.                                    else
  24.                                         {
  25.                                                 if (x>max) max=x;
  26.                                                 if (x<min) min=x;
  27.                                         }
  28.                                         count++;
  29.   
  30.                 }
  31.                    System.out.println("最大整数为"+max);
  32.                    System.out.println("最小整数为"+min);

  33.         }

  34. }
复制代码

作者: 黄炳期    时间: 2013-11-15 15:48
如果问题已经解决,可重新编辑帖子为“提问结束”




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2