7-4 Java程序设计-选择-给出某月份的天数

这是一个编程题模板。

编写程序,输人月份和年份,然后显示这个月的天数。例如:如果用户输人的月份是2而年份是2012,那么程序应该显示“February 2012 has 29 days”。如果用户输人的月份为3而年份为2015,那么程序就应该显示“March 2015 has 31 days”)。

输入格式:

输入在一行中,包括月份和年份,用空格隔开。第一个输入的数字范围为1-12,代表1-12月。

输出格式:

输出月份对应的英文,以及年份。格式如:February 2012 has 29 days

输入样例:

在这里给出一组输入。例如:

2 2012

输出样例:

在这里给出相应的输出。例如:

February 2012 has 29 days

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB

import java.util.Scanner;
public class Main{
    public static void main(String arg[]){
        Scanner input = new Scanner(System.in);
            int month = input.nextInt();
            int year = input.nextInt();
            int day=0;
        switch(month){
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:day=31;
                break;
            case 4:
            case 6:
            case 9:
            case 11:day=30;
                break;
            case 2:
                if((year%4==0)&&(year%100!=0)||(year%400==0)){
                    day=29;
                }
                else{
                    day=28;
                }
                break;
        }
        switch(month){
            case 1:System.out.print("January");break;
            case 2:System.out.print("February");break;
            case 3:System.out.print("March");break;
            case 5:System.out.print("May");break;
            case 7:System.out.print("July");break;
            case 8:System.out.print("August");break;
            case 10:System.out.print("October");break;
            case 12:System.out.print("December");break;
            case 4:System.out.print("April");break;
            case 6:System.out.print("June");break;
            case 9:System.out.print("September");break;
            case 11:System.out.print("November");break;
        }

            System.out.println(" "+year+" has "+day+" days");
  
    }     
}

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
目 录 前言 3 1需求分析 3 1.1需求分析 3 1.2功能设计 3 2.概要设计 3 2.1程序设计思路 3 2.2程序运行界面 4 2.3流程图 5 3.各模块的功能及程序说明 6 3.1.初始化组件 6 3.2.初始化数据 6 3.3.绘制程序界面 7 4.测试分析 8 5.源程序清单 10 6.课程设计体会 18 参考文献 19 前言 Java的前身是Oak,它一开始只是被应用于消费性电子产品中。后来它的开发者们发 现它还可以被用于更大范围的Internet上。1995年,Java语言的名字从Oak编程了Java。 1997年J2SE1.1发布。1998年J2SE1.2发布,标志Java2的诞生。十多年来,Java编程语言 及平台成功地运用在网络计算及移动等各个领域。Java的体系结构由Java语言Java class、Java API、Java虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效 能等众多优点。Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解 决方案。Java的平台标准有Java ME,Java SE和Java EE。Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。目前在众多的支持Java开发工具中主要的7有Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。其中Java Development Kit 简称JDK是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重 要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工 具。 1需求分析 1.1需求分析 本程序的要求为:1.使用图形用户界面;2.本程序能够实现日期与星期的查询。 1.2功能设计 本程序要构建的万年历程序,其功能有以下几个方面: (1)通过网页形式运行,实现图形界面。 (2)能以历形式显示日期与星期。 (3)支持用户自己输入年份,并提供月份的下拉形式菜单来选择月份。 (4)通过点击"更新"来刷新日历。 2.概要设计 2.1程序设计思路 1. 总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年, 该年的总天数为366,否则,为365。然后判断输入的年是否为定义年,若是,令总天 数S=1,否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一到 要输出的月份之间的天数累加起来,若该是闰年中的月份并且该还大于二,再 使总天数加1,否则,不加,既算出从定义年一一日到输出年的该一日的总天数 。 2. 输出月份第一天为星期几的算法:使总天数除以7取余加2得几既为星期几,若是7, 则为星期日。 3. 算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以 前的位置用空格补上,并总该日起一次输出天数直到底,该中的天数加上该一 日为星期几的数字再除以7得0换行,即可完整的输出该的日历。 4. 如果年份小于1582年则程序不予判断。 2.2程序运行界面 2.3流程图 3.各模块的功能及程序说明 3.1.初始化组件 import java.awt.*; import java.util.*; 3.2.初始化数据 public class CalendarApplet extends Applet{ static final int TOP = 70; //顶端距离 static final int CELLWIDTH=50,CELLHEIGHT = 30; //单元格尺寸 static final int MARGIN = 3; //边界距离 static final int FEBRUARY = 1; TextField tfYear = new TextField("2004", 5); //显示年份的文本域 Choice monthChoice = new Choice(); //月份选择下拉框 Button btUpdate = new Button("更新"); //更新按钮 GregorianCalendar calendar=new GregorianCalendar(); //日历对象 Font smallFont = new Font("TimesRoman", Font.PLAIN, 15); //显示小字体 Font bigFont = new Font("TimesRoman", Font.BOLD, 50); //显示大字体 String days[] = {"星期日", "星期一", "星期二", "星期三","星期四", "星期五", "星期六"}; String months[
接口技术课程设计(VHDL/JAVA) 万年历 院(系)别 信息科学与电气工程学院 "一、设计内容及要求 " " " "1、使用图形用户界面。 " " " "2、实现日期与星期的查询 " "二、设计原始资料 " "1、显示信息:用户可以向前翻页查询前一个的日期,也可以向后翻页查 " "询下一个的日期。 " " " "2、定时提醒:用户可以针对某一天来添加,删除和编辑这一天的日程提醒 " "信息,当系统时间和提醒时间相吻合时,给出具有提示信息的对话框。 " "三、设计完成后提交的文件和图表 " "1.计算说明书部分 " "数据库设计分析 " "1. 总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰 " "年,是闰年,该年的总天数为366,否则,为365。然后判断输入的年是否为" "定义年,若是,令总天数S=1,否则,用累加法计算出定义年到输入年之间 " "的总天数,再把输入年的一到要输出的月份之间的天数累加起来,若该" "是闰年中的月份并且该还大于二,再使总天数加1,否则,不加,既算 " "出从定义年一一日到输出年的该一日的总天数。 " " 2. 输出月份第一天为星期几的算法:使总天数除以7取余加2得几既为 " "星期几,若是7,则为星期日。 " "3. 算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后 " ",把该日期以前的位置用空格补上,并总该日起一次输出天数直到底,该" "中的天数加上该一日为星期几的数字再除以7得0换行,即可完整的输出" "该的日历。 " "2.图纸部分: " "程序流程图 " " " "四、进程安排 " "1、星期一选定题目,查阅资料 " "2、星期二构思程序流程图 " "3、星期三和星期四编写且完善程序 " "4、星期五答辩 " "五、主要参考资料 " "1、Eclipse使用教程 " "2、java程序设计常用教程 " 目 录 前言 3 1需求分析 3 1.1需求分析 3 1.2功能设计 3 2.概要设计 3 2.1程序设计思路 3 2.2程序运行界面 4 2.3流程图 5 3.各模块的功能及程序说明 6 3.1.初始化组件 6 3.2.初始化数据 6 3.3.绘制程序界面 7 4.测试分析 8 5.源程序清单 10 6.课程设计体会 18 参考文献 19 摘 要 我们的实践的能力,为提高知识,可以运用了再创造,学校在2周安排,我们发出java课 程设计进行实习。 此文件的详细说明java的环境下,一个软件设计的过程,本软体是各种数据的个数统计 。 这种软件的功能,用户可一段文字输入后,软件是文字中的各类的数据的成绩为英语和 数据的数量和数字数据的数量、空白的数据的数量和它的类型的数据的数量,然后,他将 显示出来。 以下,课程设计通过解释数据是软件的统计,计划于解释了调整,并将负责等方面,还详 细介绍了此项技术的制作过程说明了作用,以及各种无法实行操作。 关键字:万年历,java,头文件 前言 Java的前身是Oak,它一开始只是被应用于消费性电子产品中。后来它的开发者们发 现它还可以被用于更大范围的Internet上。1995年,Java语言的名字从Oak编程了Java。 1997年J2SE1.1发布。1998年J2SE1.2发布,标志Java2的诞生。十多年来,Java编程语言 及平台成功地运用在网络计算及移动等各个领域。Java的体系结构由Java语言Java class、Java API、Java虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效 能等众多优点。Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解 决方案。Java的平台标准有Java ME,Java SE和Java EE。Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。目前在众多的支持Java开发工具中主要的7有Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。其中Java Development Kit 简称JDK是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重 要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工 具。 1需求分析 1.1需求分析 本程序的要求为:1.使用图形用户界面;2.本程序能够实现日期与星期的查询。 1.2功能设计 本程序要构建的万年历程序,其功能有以下几个方面: (1)通过网页形式运行,实现图形界面。 (2)能以历形式显示日期与星期。 (3)支持用户自己输入年份,并提供月份的下拉形式菜单来选择月份。 (4)通过点击"更新"来刷新日历。 2.概要设计 2.1程序设计
课 程 设 计 "题 目 "万年历 " "学 院 "计算机科学与信息工程学院 " "专 业 "计算机科学与技术 " "班 级 "09网络 " "学生姓名 " " "指导教师 " " "2012 "年"7 ""14 "日 " " " " " " " " 目 录 前言 3 1需求分析 3 1.1需求分析 3 1.2功能设计 3 2.概要设计 3 2.1程序设计思路 3 2.2程序运行界面 4 2.3流程图 5 3.各模块的功能及程序说明 6 3.1.初始化组件 6 3.2.初始化数据 6 3.3.绘制程序界面 7 4.测试分析 8 5.源程序清单 10 6.课程设计体会 18 参考文献 19 前言 Java的前身是Oak,它一开始只是被应用于消费性电子产品中。后来它的开发者们发 现它还可以被用于更大范围的Internet上。1995年,Java语言的名字从Oak编程了Java。 1997年J2SE1.1发布。1998年J2SE1.2发布,标志Java2的诞生。十多年来,Java编程语言 及平台成功地运用在网络计算及移动等各个领域。Java的体系结构由Java语言Java class、Java API、Java虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效 能等众多优点。Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解 决方案。Java的平台标准有Java ME,Java SE和Java EE。Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。目前在众多的支持Java开发工具中主要的7有Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。其中Java Development Kit 简称JDK是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重 要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工 具。 1需求分析 1.1需求分析 本程序的要求为:1.使用图形用户界面;2.本程序能够实现日期与星期的查询。 1.2功能设计 本程序要构建的万年历程序,其功能有以下几个方面: (1)通过网页形式运行,实现图形界面。 (2)能以历形式显示日期与星期。 (3)支持用户自己输入年份,并提供月份的下拉形式菜单来选择月份。 (4)通过点击"更新"来刷新日历。 2.概要设计 2.1程序设计思路 1. 总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年, 该年的总天数为366,否则,为365。然后判断输入的年是否为定义年,若是,令总天 数S=1,否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一到 要输出的月份之间的天数累加起来,若该是闰年中的月份并且该还大于二,再 使总天数加1,否则,不加,既算出从定义年一一日到输出年的该一日的总天数 。 2. 输出月份第一天为星期几的算法:使总天数除以7取余加2得几既为星期几,若是7, 则为星期日。 3. 算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以 前的位置用空格补上,并总该日起一次输出天数直到底,该中的天数加上该一 日为星期几的数字再除以7得0换行,即可完整的输出该的日历。 4. 如果年份小于1582年则程序不予判断。 2.2程序运行界面 2.3流程图 3.各模块的功能及程序说明 3.1.初始化组件 import java.awt.*; import java.util.*; 3.2.初始化数据 public class CalendarApplet extends Applet{ static final int TOP = 70; //顶端距离 static final int CELLWIDTH=50,CELLHEIGHT = 30; //单元格尺寸 static final int MARGIN = 3; //边界距离 static final int FEBRUARY = 1; TextField tfYear = new TextField("2004", 5); //显示年份的文本域 Choice monthChoice = new Choice(); //月份选择下拉框 Button btUpdate = new Button("更新"); //更新按钮 GregorianCalendar calendar=new GregorianCalendar(); //日历对象 Font smallFont = new Font("TimesRoman", Font.PLAIN, 15); //显示小字体 Font bigFont =

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值