黑马程序员技术交流社区

标题: 50道java基础题——每帖2题 [打印本页]

作者: 744919632    时间: 2015-12-20 23:25
标题: 50道java基础题——每帖2题
【程序26】
题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。
程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母。
  
import  java.io.*;
  
public class  Prog26{
  
    public static void main(String[] args){
  
        String str = new String();
  
       BufferedReader bufIn = new BufferedReader(new InputStreamReader(System.in));
  
       System.out.print("请输入星期的英文单词前两至四个字母):");
  
       try{
  
           str = bufIn.readLine();
  
       }catch(IOException e){
  
           e.printStackTrace();
  
       }finally{
  
           try{
  
               bufIn.close();
  
           }catch(IOException e){
  
               e.printStackTrace();
  
           }
  
      }
  
       week(str);
  
    }
  
    private static void week(String str){
  
        int n = -1;
  
        if(str.trim().equalsIgnoreCase("Mo")  || str.trim().equalsIgnoreCase("Mon") ||  str.trim().equalsIgnoreCase("Mond"))
  
           n = 1;
  
        if(str.trim().equalsIgnoreCase("Tu")  || str.trim().equalsIgnoreCase("Tue") ||  str.trim().equalsIgnoreCase("Tues"))
  
           n = 2;
  
        if(str.trim().equalsIgnoreCase("We")  || str.trim().equalsIgnoreCase("Wed") ||  str.trim().equalsIgnoreCase("Wedn"))
  
           n = 3;
  
        if(str.trim().equalsIgnoreCase("Th")  || str.trim().equalsIgnoreCase("Thu") ||  str.trim().equalsIgnoreCase("Thur"))
  
           n = 4;
  
        if(str.trim().equalsIgnoreCase("Fr")  || str.trim().equalsIgnoreCase("Fri") ||  str.trim().equalsIgnoreCase("Frid"))
  
           n = 5;
  
        if(str.trim().equalsIgnoreCase("Sa")  || str.trim().equalsIgnoreCase("Sat") ||  str.trim().equalsIgnoreCase("Satu"))
  
           n = 2;
  
        if(str.trim().equalsIgnoreCase("Su")  || str.trim().equalsIgnoreCase("Sun") ||  str.trim().equalsIgnoreCase("Sund"))
  
           n = 0;
  
        switch(n){
  
            case 1:
  
               System.out.println("星期一");
  
               break;
  
            case 2:
  
               System.out.println("星期二");
  
               break;
  
            case 3:
  
               System.out.println("星期三");
  
               break;
  
            case 4:
  
               System.out.println("星期四");
  
               break;
  
            case 5:
  
               System.out.println("星期五");
  
               break;
  
            case 6:
  
               System.out.println("星期六");
  
               break;
  
            case 0:
  
               System.out.println("星期日");
  
               break;
  
            default:
  
               System.out.println("输入有误!");
  
               break;
  
        }
  
    }
  
}
  
【程序27】
题目:求100之内的素数
  
public class  Prog27{
  
    public static void main(String[] args){
  
        int n = 100;
  
        System.out.print(n+"以内的素数:");
  
        for(int i=2;i<n+1;i++){
  
            if(isPrime(i))
  
               System.out.print(i+" ");
  
        }
  
    }
  
    //求素数
  
    private static boolean isPrime(int n){
  
        boolean flag = true;
  
        for(int i=2;i<Math.sqrt(n)+1;i++)
  
            if(n%i==0){
  
               flag = false;
  
               break;
  
            }
  
        return flag;
  
    }
  
}
  

作者: 意念痴心灬戒贪    时间: 2015-12-21 00:06
谢谢分享~!
作者: Mr.zhao    时间: 2015-12-21 09:04
下面这题有误啊,2也数质数,没算进去
作者: 王冀仁    时间: 2015-12-21 09:10
谢谢分享,我也做做{:2_32:}
作者: anuo    时间: 2015-12-21 10:32
求素数的这道题感觉好像有代码比较简单的写法.我是小白,还不怎么看的懂




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