世界上不同国家有不同的写日期的习惯。比如美国人习惯写成“月-日-年”,而中国人习惯写成“年-月-日”。下面请你写个程序,自动把读入的美国格式的日期改写成中国习惯的日期。
输入格式:
输入在一行中按照“mm-dd-yyyy”的格式给出月、日、年。题目保证给出的日期是1900年元旦至今合法的日期。
输出格式:
在一行中按照“yyyy-mm-dd”的格式给出年、月、日。
代码如下:
#include<stdio.h>int main(){//dayNum:每个月的天数int year,month,day,dayNum;int sign=0;printf("请输入月-日-年(例如:10-28-):");scanf("%d-%d-%d",&month,&day,&year);//判断是否闰年if((year%4==0&&year%100!=0)||year%400==0){//闰年标记为1sign=1;}if(month>=1&&month<=12){//判断每个月的天数switch(month){case 1:case 3:case 5:case 7:case 8:case 10:case 12:dayNum=31;break;case 4:case 6:case 9:case 11:dayNum=30;break;case 2:if(sign==1)dayNum=29;elsedayNum=28;break;default:break;}if(!(day>0&&day<=dayNum)){printf("日期格式错误!\n");return 2;}}else{printf("月份格式错误!\n");return 1;}//都没错则格式正确,转换格式printf("日期格式正确\n转换后的日期格式为:%d-%02d-%02d\n",year,month,day);return 0;}
【C语言】世界上不同国家有不同的写日期的习惯。比如美国人习惯写成“月-日-年” 而中国人习惯写成“年-月-日”。下面请你写个程序 自动把读入的美国格式的日期改写成中国习惯的日期。