计算x年到y年之间的对称日
思路:
先判断每年是不是闰年,然后计算每年每月每天,再将年月日三个数连在一起,进行判断是不是对称日,再输出这一天,在循环中设置变量来求和。
代码:
#include<stdio.h>
int main(){
int x,y,year=0,month=0,day=0;
int m=0,n=0,j=0,a=0,b=0,c=0,t=0;
scanf("%d%d",&x,&y);
for(year=x;year<=y;year++){
for(m=0,month=1;month<13;month++){
if(year%4==0&&year%100!=0||year%400==0){
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12){
m=31;
}
else if(month==4||month==6||month==9||month==11){
m=30;
}
else if(month==2){
m=29;
}
}
else{
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12){
m=31;
}
else if(month==4||month==6||month==9||month==11){
m=30;
}
else if(month==2){
m=28;
}
}
for(n=0,day=1;day<=m;day++){
n=year*10000+month*100+day;
t=n;
for(j=0,c=0;j<8;j++){
c=c*10+t%10;
t=t/10;
}
if(n==c){
a++;
printf("%d年%d月%d日 ",year,month,day);
}
}
}
}
printf("\n总共有%d天",a);
return 0;
}
标签:int,d%,month,计算,year,对称 来源: https://blog.csdn.net/Violeta____/article/details/121752960
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。