遇到一个有意思的编程题,使用C语言实现计算今天是该年的第几天。
实现代码如下:
#include<stdio.h> int d[12]={31,28,31,30,31,30,31,31,30,31,30,31}; //将每月天数存在数组中(类似字典) int add(int months,int flag,int days)//计算天数 { int num=0,i=0; if(flag>0)//判断闰年 { if(months>2)//判断月份是否包含闰年二月 num=num+1; } for(i=0;i<months-1;i++)//计算天数 { num=num+d[i]; } num=num+days;//添加当月天数 return num; } int main() { int year,months,days,flag=0; //scanf("%d,%d,%d",&year,&months,&days); year=2024; months=3; days=24; if(year>0&&year<3000&&months<13&&months>0&&days>0&&days<32) //限制正常输入 { if(year%4==0&&year%100!=0||year%400==0) //判断是否为闰年 { flag=1; } printf("the days is %d",add(months,flag,days)); } else printf("error input\n"); return 0; }
代码写的比较潦草,不足之处还望指出告知。
参考文章:
https://cloud.tencent.com/developer/article/1815427
标签:&&,语言,第几天,int,31,30,num,计算 From: https://www.cnblogs.com/LJianYu/p/18154381