A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 一步步 中级黑马   /  2013-11-15 12:44  /  1177 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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);

        }

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

评分

参与人数 1技术分 +1 收起 理由
黄炳期 + 1

查看全部评分

2 个回复

倒序浏览
  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. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
黄炳期 + 1

查看全部评分

回复 使用道具 举报
如果问题已经解决,可重新编辑帖子为“提问结束”
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马