请完成下列Java程序:输出某年的某月有多少天数,要求生成2个输入对话框,一个输入年份,一个输入月份,并且能检查输入的数字是否符合要求,如果符合要求,则根据输入的年份和月份计算出这一年的这一月有多少天。提示:闰年为年数能被4整除但是不能被100整除。 注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 程序运行结果如下:
import javax.swing. JOptionPane; public class ex10_2 { public static void main(String[] args) (String strIn;int nYear,nMonth,nNumOfDays=0;strIn=JOptionPane.showInputDialog(,,year.);nYear=Integer.parseInt(strIn);if(nYear<0) { System.out.println("Invalidate number of year!") return;} strIn=JOptionPane.showInputDialog("month.);nMonth=Integer.parseInt(strIn);if(_____________) { System.out.println("Invalidate number of month!" return;}switch(nMonth){ case 1: case 3: case 5: case 7: case 8: case 10: case 12:nNumOfDays=31;break; case 4: case 6: case 9: case 11:nNumOfDays=30;break; case 2: if(________________) nNumOfDays=29; elsenNumOfDays=28; break; } System.out.println("Number of days:"+ nNumOfDays); } }
参考答案:
解析:nMonth<0 || nMonth>12((nYear%4 ==0)&&!(nYear%100 == 0)) || (nYear%400 == 0) 本题主要考查swing图形用户界面设计和case语句的简单应用。解题关键是会用swing的容器面板构造对话框,熟悉判断闰年的条件语句的设计,判断输入是否符合程序要求的条件语句设计,case语句的设计。本题中,第1个空,判断输入的月份值应该在1到12月之间,否则给出提示信息并退出;第2个空,闰年的判断,将题干中的提示用代码实现。