#include "Stdioh"
int main(void)
{ int year,month;
printf("Enter year and month:\n");
scanf("%d,%d",&year,&month);
if(month<1||month>12) printf("fault\n");
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12: printf("31 days in this month\n"); break;
case 4:
case 6:
case 9:
case 11:printf("30 days in this month\n");break;
case 2: if((year%4 ==0 && year %100!=0) || (year%400==0))printf("29 days in this month\n");
else printf("28 days in this month\n");
}
return 0;
}
你也太吝啬了,请他人帮忙时一点儿悬赏分都没有。足见你没什么诚意。不过我也闲来无事,就帮你个忙。呵呵~
select to_char(last_day(sysdate),'dd') from dual
也可以将sysdate替换为任意时间,以计算当天所在月份天数。
甲骨文公司简介:
oracle一般指甲骨文公司
甲骨文股份有限公司(Oracle)是全球大型数据库软件公司,总部位于美国加州红木城的红木岸。在2008年,甲骨文股份有限公司是继Microsoft及IBM后,全球收入第三多的软件公司。Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统。甲骨文股份有限公司于1989年正式进入中国,在北京、上海、广州和成都均设立了分支机构。 2016年1月,甲骨文表示会收购网站数据追踪服务商AddThis。2016年2月,甲骨文收购了云计算创业公司Ravello Systems。2017年6月7日发布的2017年美国《财富》500强,甲骨文公司排名第81位。2017年6月,《2017年BrandZ最具价值全球品牌100强》公布,甲骨文公司排名第46位。
代码实现如下:
package test01;
import javautilCalendar;
/
@author 码灵
20170905
/
public class GetDay {
public static void main(String[] args) {
int currentMaxDays = getCurrentMonthDay();
int maxDaysByDate = getDaysByYearMonth(2017, 9);
Systemoutprintln("本月天数:" + currentMaxDays);
Systemoutprintln("2017年9月天数:" + maxDaysByDate);
}
/
获取当月的 天数
/
public static int getCurrentMonthDay() {
Calendar a = CalendargetInstance();
aset(CalendarDATE, 1);
aroll(CalendarDATE, -1);
int maxDate = aget(CalendarDATE);
return maxDate;
}
/
根据年 月 获取对应的月份 天数
/
public static int getDaysByYearMonth(int year, int month) {
Calendar a = CalendargetInstance();
aset(CalendarYEAR, year);
aset(CalendarMONTH, month - 1);
aset(CalendarDATE, 1);
aroll(CalendarDATE, -1);
int maxDate = aget(CalendarDATE);
return maxDate;
}
}
按照你的要求,如何得到一个月有多少天,这里并没有说是什么年份,所以默认当年(不同年份的月份天数可能不一样,例如闰年的二月)
因此问题变为
输入条件:指定某一个月
输出结果:当年这个月份的天数
思路:在Java8里新的时间API里,月份已经被抽象成了枚举Month,所以可以把输入条件定义为枚举类型的Month,然后获取当前时间X,把时间X的月份修改为输入条件的月份,此时时间X变为X1,根据本身提供的方法lengthOfMonth就可以直接得到X1所在当月的天数了
代码:(请将JDK升到8)
public static void main(String[] args) {Systemoutprintln(countDaysInMonth(MonthMAY));
}
public static int countDaysInMonth(Month month){
// 获取当前时间
LocalDate now = LocalDatenow();
Systemoutprintln(now);
// 把当前时间的月份修改为输入的月份
LocalDate thisMonthDate = nowwithMonth(monthgetValue());
Systemoutprintln(thisMonthDate);
return thisMonthDatelengthOfMonth();
}
也可以连着写,更美观点
public static int countDaysInMonth(Month month){return LocalDatenow()
withMonth(monthgetValue())
lengthOfMonth();
}
非常直观且易懂好用,在Java8里with就代表着修改意思,withMonth那就是修改月份,所以整个代码读下来就变成
获取当前时间A
修改A的月份为输入条件得到时间B
计算B所在月的天数
=NETWORKDAYS(DATE(YEAR(NOW()),MONTH(NOW()),1),DATE(YEAR(NOW()),MONTH(NOW())+1,))
这个是本月除星期六、星期天后的天数。
真正的工作日数还应该减除本月的法定假,如春节、五一、国庆等。
楼上正解,不过楼主问出这个问题可能也是初学者,我就提供一下用简单语法的代码吧
public
static
void
main(String[]
args)
{
Scanner
scan=new
Scanner(Systemin);
Systemoutprintln("请输入年份");
int
year=
scannextInt();//得到需求年份
Systemoutprintln("请输入月份");
int
month=scannextInt();//得到需求月份
switch(month){
case
1:
case
3:
case
5:
case
7:
case
8:
case
10:
case
12:
Systemoutprintln(year+"年"+month+"月的天数为:"+31);
break;
case
4:
case
6:
case
9:
case
11:
Systemoutprintln(year+"年"+month+"月的天数为:"+30);
case
2:
if((year%400)==0
||
((year%4)==0)&&((year%100)!=0)){
Systemoutprintln(year+"年2月的天数为:"+29);
}else{
Systemoutprintln(year+"年2月的天数为:"+28);
}
}
}
php获取指定月份天数, php根据日期获取该月天数。今天给大家推荐三种方法,直接上代码:
方法一:
$days = date("t");
echo "当前月的天数 "$days"<br/>";
方法二:
$days = date('t', strtotime("2030-12"));
echo "返回2030年12月的天数 "$days"<br/>";
另外还有一种方法是使用函数直接实现,可参考:>
以上就是关于用C语言做一个台历,键盘输入的年号和月号,输出该年该月总天数全部的内容,包括:用C语言做一个台历,键盘输入的年号和月号,输出该年该月总天数、ORACLE根据月份获取天数、java中 如何获取当月的天数,指定日期的月份天数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)