题目:输入某年某月某日,判断这一天是这一年的第几天?
分析:(1)以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天
(2)特殊情况,闰年2月份的天数是29天,否则是28天

 import java.util.Scanner;
public class Prog14 {
public static void main(String[] args) {
Scanner scan1=new Scanner(System.in);
System.out.println("请输入年份:");
int year=scan1.nextInt();
Scanner scan2=new Scanner(System.in);
System.out.println("请输入月份:");
int month=scan2.nextInt();
Scanner scan3=new Scanner(System.in);
System.out.println("请输入几号:");
int date=scan3.nextInt();
scan1.close();
scan2.close();
scan3.close();
System.out.println(year+"年"+month+"月"+date+"日"+"是这一年的第"+dijitian(year,month,date)+"天");
}
//求解天数
private static int dijitian(int year,int month,int date) {
int n=0;
int[] month_date=new int[] {0,31,28,31,30,31,30,31,31,30,31,30};
if((year%400)==0||((year%4)==0)&&((year%100)!=0))//判断闰年
month_date[2]=29;
for(int i=0;i<month;i++)
n+=month_date[i];
return n+date;
}
}
/*运行结果
请输入年份:
2018
请输入月份:
9
请输入几号:
4
2018年9月4日是这一年的第247天
*/

Java50道经典习题-程序14 求日期的更多相关文章

  1. Java50道经典习题-程序6 求最大公约数及最小公倍数

    题目:输入两个正整数m和n,求其最大公约数和最小公倍数.分析:用辗转相除法求最大公约数    两个数的最大公约数:设两个数分别为n和m,(n>=m);用定义一个变量i,使用for循环,将i的取值 ...

  2. Java50道经典习题-程序9 求完数

    题目:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数. public class Prog9 { public stati ...

  3. Java50道经典习题-程序20 求前20项之和

    题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和.分析:请抓住分子与分母的变化规律.三个连续分数之间的规律是:上两个分子之和等于第三个分数的分子 ...

  4. Java50道经典习题-程序21 求阶乘

    题目:求1+2!+3!+...+20!的和分析:使用递归求解 0的阶乘和1的阶乘都为1 public class Prog21{ public static void main(String[] ar ...

  5. Java50道经典习题-程序23 求岁数

    题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁.问第4个人岁数,他说比第3个人大2岁.问第三个人,又说比第2人大两岁.问第2个人,说比第1个人大两岁.最后问第一个人,他说是10岁.请问 ...

  6. Java50道经典习题-程序27 求素数

    题目:求100之内的素数分析:素数即除了1和它本身以外不再有其他因数,最小的素数是2 判断一个数n是否是素数的方法:将n分别与2到(n+1)/2取余,若有一个值为0,则n就不为素数,反之为素数 pub ...

  7. Java50道经典习题-程序29 求矩阵对角线之和

    题目:求一个3*3矩阵对角线元素之和分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出. 例如:下面矩阵的对角线之和为24 1 4 6 2 5 3 9 7 8 public cla ...

  8. Java50道经典习题-程序38 求字符串长度

    题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度. import java.util.Scanner; public class Prog38 { public stat ...

  9. Java50道经典习题-程序43 求奇数个数

    题目:求0—7所能组成的奇数个数,奇数中不包含重复数字. public class Prog43 { public static void main(String[] args) { //0-7能组成 ...

随机推荐

  1. Win10 安装 及应用遇到的问题

    IOS https://www.microsoft.com/zh-cn/software-download/techbench setup win10安装必须用administrator账号安装 在w ...

  2. sql中纵表变横表

    纵表格式如图所示: 查询sql语句如下: ),content)content,Date from SummerChina ' 变成横表如图所示: 纵表变横表sql语句如下: select Time, ...

  3. Multipart polyline to single part lines

    Breaking Up Polylines  http://forums.esri.com/Thread.asp?c=93&f=987&t=74554&mc=4#msgid19 ...

  4. kubernetes 示例 hello world

    本文所说的Hello world是一个web留言板应用,并且是基于PHP+Redis的两层分布式架构的web应用,前端PHP web网站通过访问后端Redis数据库完成用户留言的查询和添加功能,具备读 ...

  5. Linux系统下使用ckfinder上传中文名的图片无法正常预览

    问题描述:使用ckfinder上传带有中文名称的图片后在Windows本地可以正常预览,部署在Linux系统后,带有中文名的图片不能正常显示 解决办法:找到Tomcat的根目录 --> conf ...

  6. Educational Codeforces Round 54

    这套题不难,但是场上数据水,导致有很多叉点 A. 因为是让求删掉一个后字典序最小,那么当a[i]>a[i+1]的时候,删掉a[i]一定最优!这个题有个叉点,当扫完一遍如果没有满足条件的,就删去最 ...

  7. 此实现不是Windows平台FIPS验证的加密算法的一部分

    运行wpf程序,出现错误“此实现不是Windows平台FIPS验证的加密算法的一部分”. 解决方法: 1.在window中打开功能里输入regedit,回车打开注册器: 2.进入如下路径中 HKEY_ ...

  8. 同台机器2个网卡配置同段IP

    看个例子:1.on serverifconfig eth4 192.168.1.10/24 upifconfig eth5 192.168.1.11/24 up2.on clientifconfig ...

  9. [Selenium] 怎样判断是否适合自动化测试

    实施自动化测试前需要对软件开发过程进行分析,以观察其是否适合使用自动化测试.通常需要满足以下条件: 1)需求变动不频繁 2)项目周期足够长 3)自动化测试脚本可重复使用 4)手工测试无法完成或者需要大 ...

  10. http://4526621.blog.51cto.com/4516621/1343369

    http://4526621.blog.51cto.com/4516621/1343369