总结,通过结合`fgets`、`sscanf`和条件判断,该程序能够实现从用户输入中正确读取年月格式为"年\月"的日期,并进行有效范围验证。当输入正确时,计算并显示该月份的天数;否则,输出错误提示。
输入格式: 输入在一行中按照“mm-dd-yyyy”的格式给出月、日、年。题目保证给出的日期是1900年元旦至今合法的日期。 输出格式: 在一行中按照“yyyy-mm-dd”的格式给出年、月、日。 输入样例: 03-15-2017 输出样例: 2017-03-15 代码长度限制 16 KB 时间限制 400 ms 内存限制 64 MB #include <stdio.h>...
// 输入第一个日期 printf("Enter date in mm/dd/yyyy format: "); scanf("%d/%d/%d", &month1, &day1, &year1);// 输入第二个日期 printf("Enter another date in mm/dd/yyyy format: "); scanf("%d/%d/%d", &month2, &day2, &year2);// 判断两个日期的大小 if (...
main(){int y,m,s;while(1){ scanf("%d/%d/%d",&y,&m,&s);printf("%d--%d--%d\n\n",y,m,s);} }
输入一个日期的年、月、日,计算并输出这天是该年的第几天。比如:2011年1月31日,是该年的第31天。 优化后: #include <stdio.h> intmain() { intday,month,year,sum,leap; printf("\n请输入年、月、日,格式为:年,月,日(2015,12,10)\n"); ...
8: 获取date1的num月之后的日期 赋值到date2, 当num为负值时获取date1的num月前的日期;若date1为20120229 num为12则date2为20130228 date1: 格式YYYYMMDD, 输入参数 date2: 格式YYYYMMDD, 输入参数/输出参数 num: 数字, 输入参数/输出参数 可正可负 RETURN VALUE:0: 计算成功 非0: 计算失败 NO...
;i++){sum+=m[i];} sum+=day;printf ("Total=%d\n",sum);} int leap(int y){ int leapyear=0;if (y%4!=0)leapyear=0;else if (y%100!=0)leapyear=1;else if (y%400!=0)leapyear=0;else leapyear=1;return(leapyear);} //输入的时候 按 2004-10-31这样格式输入 ...
intmain(){intday,month,year,sum,leap;printf("\n请输入年、月、日,格式为:年,月,日(2015,12,10)\n");scanf("%d%d%d",&year,&month,&day);//格式为:20190510 switch(month)//先计算某月以前月份的总天数 {case1:sum=0;break;case2:sum=31;break;case3:sum=59;break;case4:sum=...
include <stdio.h> int main(void){ int nian, yue, ri;printf("请输入您的出生日期,输入的格式为xxxx年xx月xx日(注:年月日三字以空格代替即可)\n");scanf("%d %d %d", &nian, &yue, &ri);printf("您的生日是%d年%d月%d日!\n", nian, yue, ri);return 0;} ...
scanf(“%d.%d.%d”,&year,&month,&day);scanf(“%d-%d-%d”,&year,&month,&day);