【牛客带你学编程Java方向】项目练习第1期(截止2.5)


Java项目练习:第1期
练习时间:1月22日-2月5日(2周)
活动规则:
  • 每一期一个项目,届时会开新帖发布     
  • 学员直接将答案提交到该贴评论区即可     
  • 两周后,公布导师参考答案     
  • 导师评选出当期最佳代码     
奖励:牛客大礼包一份(牛客定制水杯 牛客定制笔 牛客定制程序员徽章 滑稽抱枕)
参与方式:直接将你的代码回复到本帖评论区

-----------------------------------------------------

本期题目:

判断闰年(20分钟)

需求描述:
  • 本题仅要求判断一个年份是否为闰年。
  • 由用户输入任意一个年份,能被4整除但不能被100整除,或者能被400整除,是闰年。(结果:输出闰年或平年)
考察知识点:
  • Java语言基础
  • 基本输入输出
  • 三元运算符
参考知识点:《java基础入门》第2章 p16-p73
难点提示:
  • 条件运算符是三目运算符,其格式为:表达式?语句1:语句2;
  • 其中表达式的值是布尔类型,当表达式的值为true时执行语句1,否则执行语句2。要求语句1和语句2 返回的数据类型必须相同,并且不能无返回值。

参与方式:直接将你的代码回复到本帖评论区


------------------------------------
本期最佳代码已设置为精彩~
@温柔小猪 同学将获得牛客定制大礼包一份!!!
全部评论
import java.util.Scanner; public class Main { public static boolean isLeapYear(int year) { return year % 100 == 0 ? year % 400 == 0 : year % 4 == 0; } public static void main(String[] args) { // TODO Auto-generated method stub Scanner in = new Scanner(System.in); int year = 0; while (in.hasNext()) { year = in.nextInt(); System.out.println("请输入任意一个年份:"); if (year < 0) { System.out.println("输入为错误的年份"); } else { if (isLeapYear(year)) System.out.println(year + "是闰年!"); else System.out.println(year + "是平年"); } } in.close(); } }
点赞 回复 分享
发布于 2018-02-05 22:24
package NOWCODER.JAVA.PRO; import java.util.Scanner; /**  * 判断闰年  * @author 郑学炜  *  * 输入年份,若输入为负数或者非数字,则抛出异常。  */ public class isLeapyear {          public static void main(String[] args) {         System.out.println("请输入一个年份");           Scanner scan = new Scanner(System.in);           long year=scan.nextLong();           try{               if(year<=0){                   throw new Exception();               }               boolean b=((year%4==0&&year%100!=0)||(year%400==0))?true:false;               if (b){                   System.out.println("闰年");               }else{                   System.out.println("平年");               }           }catch(Exception e){               System.out.println("输入为错误的年份");           }     } }
点赞 回复 分享
发布于 2018-01-23 00:33
import java.util.Scanner; public class LeapYear1 {          public static boolean isleapyear(int year) {         return (year%4==0&&year%100!=0)||year%400==0 ?  true:false;     }     public static void main(String[] args) {                  Scanner sc = new Scanner(System.in);                  System.out.println("请输入一个年份:");         int year;         while(sc.hasNext()) {             year = sc.nextInt();             if(year<0)                 System.out.println("输入的年份有误!");             else {                 System.out.println(year+"年"+(isleapyear(year) ? "是闰年":"是平年"));             }         }sc.close();     } }
点赞 回复 分享
发布于 2019-02-17 00:29
import java.util.Scanner; public class LeapYear1 { public static boolean isleapyear(int year) { return (year%4==0&&year%100!=0)||year%400==0 ? true:false; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入一个年份:"); int year; while(sc.hasNext()) { year = sc.nextInt(); if(year<0) System.out.println("输入的年份有误!"); else { System.out.println(year+"年"+(isleapyear(year) ? "是闰年":"是平年")); } }sc.close(); } }
点赞 回复 分享
发布于 2019-02-17 00:24
import java.util.Scanner; public class LeapYear1 {          public static boolean isleapyear(int year) {         return (year%4==0&&year%100!=0)||year%400==0 ?  true:false;     }     public static void main(String[] args) {                  Scanner sc = new Scanner(System.in);                  System.out.println("请输入一个年份:");         int year;         while(sc.hasNext()) {             year = sc.nextInt();             if(year<0)                 System.out.println("输入的年份有误!");             else {                 System.out.println(year+"年"+(isleapyear(year) ? "是闰年":"是平年"));             }         }sc.close();     } } //初学者,麻烦有人帮我看下,写的有什么瑕疵吗?
点赞 回复 分享
发布于 2019-02-17 00:20
import java.util.Scanner; public class Test{ public static void main(String[] args){ Scanner in=new Scanner(System.in); System.out.println("请输入年份"); int year=in.nextInt(); if(year%4==0&&year%100!=0||year%==0) System.out.println(year+"是闰年"); else System.out.println(year+"是平年"); } }
点赞 回复 分享
发布于 2018-07-22 09:17
import java.util.Scanner;
点赞 回复 分享
发布于 2018-07-22 00:38
import java.util.*
点赞 回复 分享
发布于 2018-07-22 00:37
import java.util.Scanner; public class demo_1 {/* 判断闰年 */ public static void main(String[] args) { Scanner in = new Scanner(System.in); while (in.hasNext()){ int year = in.nextInt(); if (year<0 || year>10000000){ System.out.println("error,enter again!"); } else{ if (isLeapYear(year)) System.out.println(year+"是闰年"); else System.out.println(year+"不是闰年"); } } } public static boolean isLeapYear(int x){ return (x%4==0 && x%100!=0 || x%400==0) ? true : false; } }
点赞 回复 分享
发布于 2018-04-11 11:10
package nowcoder; import java.util.Scanner; public class Demo1 {     public static void main(String[] args) {         // 判断一个年份是不是闰年         String a = "是闰年";         String b = "是平年";         Scanner input = new Scanner(System.in);// 创建输入流         System.out.println("请输入一个年份:");         int year = input.nextInt();         // 运用三目运算符判断         System.out.println(((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) ? a : b);         input.close();// 关闭输入流     } }
点赞 回复 分享
发布于 2018-02-04 20:15
import java.util.*; public class ee{ public static void main(String[]agrs){ Scanner sc=new Scanner (System.in); int year; System.out.println("请输入一个年份:"); year=sc.nextInt(); if((year/4==0&&year/100!=0)||(year/400==0)){ System.out.println("是闰年:"); }else{ System.out.println("是平年:"); } } }
点赞 回复 分享
发布于 2018-02-03 10:10
import java.util.Scanner; public class Year {     public static void main(String[] args) {         System.out.println("请输入年份:");//负数代表公元前,正数代表公元后         Scanner input = new Scanner(System.in);         try{             int year = input.nextInt();                  String result=((year%4==0 && year%100 !=0) || (year%400==0))?                 "闰年":"平年";         System.out.println(year+"是" +result);     }finally{         input.close();     }                       } }
点赞 回复 分享
发布于 2018-02-02 11:06
import java.util.Scanner;//导包 public class LeapYear {     public static void main(String[] args) {         //创建键盘录入对象         Scanner sc = new Scanner(System.in);                  //录入数据         System.out.println("请输入年份:");         int year = sc.nextInt();                  if(year < 0) {             System.out.println("你输入的年份有误");         }else if(isLeapYear(year)) {             System.out.println(year+"是闰年");         }else {             System.out.println(year+"是平年");         }              }          /*         需求:         两个明确:             返回值类型:boolean             参数列表:int year     */     public static boolean isLeapYear(int year) {         return (year%100 == 0 && year%400 == 0 || year%100 != 0 && year%4 == 0)? true : false;     } }
点赞 回复 分享
发布于 2018-01-30 23:08
1 import java.util.Scanner; 2 3 public class NewMain { 4 5 public static boolean runNian(int year) { 6 System.out.println(year + "是闰年"); 7 return true; 8 } 9 10 public static boolean pingNian(int year) { 11 System.out.println(year + "是平年"); 12 return true; 13 } 14 15 public static void main(String[] args) { 16 // 处理不合法输入 17 try { 18 // 接收用户输入年份 19 System.out.println("请输入要判断的年份:"); 20 Scanner console = new Scanner(System.in); 21 int year = Integer.valueOf(console.nextLine()); 22 // 进行年份闰年平年的判断 23 boolean b = (year % 4 == 0 && year % 100 == 1) || (year % 400 == 0) ? runNian(year) : pingNian(year); 24 } catch (NumberFormatException e) { 25 System.out.println("输入年份不合法,请重新输入"); 26 } 27 } 28 }
点赞 回复 分享
发布于 2018-01-30 17:44
import java.util.*; import java.io.*; public class LeapYear {     public static void main(String[] args)      {                  detectLeapYear();     }     public static void detectLeapYear()     {         BufferedReader br = new BufferedReader(new InputStreamReader(System.in));         String str = null;         int num = 0;         try         {             System.out.print("请输入一个年份(例如:2018),范围在【0 - " + Integer.MAX_VALUE+ "】.输入-1结束:");             while((str=br.readLine())!=null)             {                 try                 {                     num = Integer.parseInt(str.trim());                     if(num == -1)//-1作为结束标识                     {                         //退出程序                         break;                     }                     if(num>=0 && num <= Integer.MAX_VALUE)//整数范围内检测                     {                         if(isLeapYear(num))                         {                             System.out.println("公元" + num  + "是闰年");                         }                         else                         {                             System.out.println("公元" + num  + "是平年");                         }                     }                     else                     {                         System.out.println("输入的整数超出范围,重新输入");                                              }                     System.out.print("请输入一个年份(例如:2018),范围在【0 - " + Integer.MAX_VALUE+ "】.输入-1结束:");                 }catch(NumberFormatException e1)                 {                     System.out.println("输入非数字字符,请重新输入");                     System.out.print("请输入一个年份(例如:2018),范围在【0 - " + Integer.MAX_VALUE+ "】.输入-1结束:");                 }             }         }catch(IOException e)         {         }finally         {             if(br != null)         {             try             {                 br.close();             }catch(IOException e)             {}         }         }              }     //检测是否是闰年     public static boolean isLeapYear(int year)     {         return (((year%4==0)&&(year%100!=0)) || year%400==0) ? true :false;     } }
点赞 回复 分享
发布于 2018-01-29 17:06
点赞 回复 分享
发布于 2018-01-29 10:39
import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.regex.Pattern; import java.util.regex.Matcher; public class LeapYear {     public static void main(String[] args) {         //读取用户输入数据         BufferedReader in = new BufferedReader(new InputStreamReader(System.in));         System.out.println("please input a year from -9999 to 9999:");         String text="";         try {             text=in.readLine();         }catch (Exception e) {             e.printStackTrace();         }         //判断输入过大数据的情况         if (text.length()>5) {             System.out.println("input data should be not more than 5 chars");             text="a";         } else {             //判断输入是否为整数             Pattern pattern = Pattern.compile("^(0|[1-9][0-9]*|-[1-9][0-9]*)$");             Matcher isNum = pattern.matcher(text);             if (isNum.matches()) {                 //闰年判断,忽略3200/6400/9600的特殊情况                 int year = Integer.parseInt(text);                 if (year == 0) {                     System.out.println("year cannot be 0");                 } else if (year>0) {                     if (year>9999) {                         System.out.println("year input should be not more than 9999");                     } else {                     System.out.println((year%4==0 && year%100!=0) || (year%400==0) ?                     year+" is leap year" : year+" is common year");                     }                 } else {                     System.out.println(((year+1)%4==0 && (year+1)%100!=0) || ((year+1)%400==0) ?                         year+" is leap year" : year+" is common year");                 }             } else {                 System.out.println("input data is not an integer");             }         }     } }
点赞 回复 分享
发布于 2018-01-27 17:23
作者:HelloWord。 链接:https://www.nowcoder.com/discuss/66325 来源:牛客网 import java.util.Scanner; public class Main{     public static void main(String[] args) {         Scanner scanner = new Scanner(System.in);         while (scanner.hasNext()) {             int i = scanner.readInt();             System.out.println(((i % 4 == 0 && i % 100 != 0) || i % 400 == 0) ? "闰年" : "平年" );         }     } }
点赞 回复 分享
发布于 2018-01-26 16:05
import java.util.Scanner; public class JudgeYear {      public static void main(String args[]){          Scanner s=new Scanner(System.in);     int year = 0;     while(year<=0){         System.out.print("请输入一个年份:");         year=s.nextInt();         continue;     }              IsLeapyear(year); } private static boolean IsLeapyear(int year) {     if(year%4==0 && year%100!=0)     {         System.out.println(year+"年是闰年");         return true;     }     else if (year%400==0) {         System.out.println(year+"年是闰年");         return true;     }     else {         System.out.println(year+"年是平年");         return false;     } } }
点赞 回复 分享
发布于 2018-01-26 14:53
package all_test; import java.util.Scanner; public class Test_1 {     public static void main(String[]args) {         System.out.print("请输入待判断年份:");         Scanner sc=new Scanner(System.in);         String str=Year(sc.nextInt());         System.out.println(str);     }     public static String Year(int year) {         return ((year%4==0&&year%100!=0)||year%400==0)?"闰年":"平年";     } }
点赞 回复 分享
发布于 2018-01-26 14:44

相关推荐

点赞 评论 收藏
分享
程序员花海:实习太简单了 学历可以的 实习描述应该是先介绍业务 再介绍技术 技术咋推动业务的 做到了啥收益 有没有做实验 实验组和对照组有什么不同 你最后学到了什么 有没有参与处理过线上问题 有没有参与过公司的code review 有没有参与过技术分享 这些都是可以在实习描述中写的 并且实习和项目不一样不会撞车 应该放在最前面 放在教育背景下面 另外项目有点烂大街 可以看下我主页的简历优化案例
点赞 评论 收藏
分享
评论
点赞
20
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务