java 输入年月日,计算该日是这一年的第几天
1.输入年月日,计算该日是这一年的第几天importjava.util.Scanner;publicclassshiyan2{publicstaticvoidmain(S...
1. 输入年月日,计算该日是这一年的第几天
import java.util.Scanner;
public class shiyan2
{
public static void main(String[] args)
{
int year,month,day,a=0,b=0;
Scanner reader=new Scanner(System.in);
System.out.println("请输入年份");
year=reader.nextInt();
System.out.println("请输入月份");
month=reader.nextInt();
System.out.println("请输入日");
day=reader.nextInt();
for(int i=1;i<month;i++)
{
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
a=31;
break;
case 2:
if(year%4==0&&year%100!=0||year%400==0)
a=29;
else
a=28;
break;
case 4:
case 6:
case 9:
case 11:
a=30;
break;
}
b=b+a;
}
b=b+day;
System.out.println("这是这一年的第"+b+"天");
}
}
为什么输入2000年2月一日结果是30不是32?错在哪里 展开
import java.util.Scanner;
public class shiyan2
{
public static void main(String[] args)
{
int year,month,day,a=0,b=0;
Scanner reader=new Scanner(System.in);
System.out.println("请输入年份");
year=reader.nextInt();
System.out.println("请输入月份");
month=reader.nextInt();
System.out.println("请输入日");
day=reader.nextInt();
for(int i=1;i<month;i++)
{
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
a=31;
break;
case 2:
if(year%4==0&&year%100!=0||year%400==0)
a=29;
else
a=28;
break;
case 4:
case 6:
case 9:
case 11:
a=30;
break;
}
b=b+a;
}
b=b+day;
System.out.println("这是这一年的第"+b+"天");
}
}
为什么输入2000年2月一日结果是30不是32?错在哪里 展开
5个回答
展开全部
switch(month) 改成 switch(i)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Calendar cal = Calendar.getInstance();
System.out.println(cal.get(Calendar.DAY_OF_YEAR));
System.out.println(cal.get(Calendar.DAY_OF_YEAR));
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
for(int i=1;i<=month;i++) ,少了等于号把。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你应该switch(i),而不是switch(month)
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
switch(i) 不然你进去就是选择了29.。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询