输入:年月日,格式如 2013/5/15
输出:正整数表示这是今年的第几天
程序如下:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main() {
int y, m, d; //三个整数表示年月日
scanf(" %d/%d/%d", &y, &m, &d);
int a[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; //该数组用于保存12个月份,假设该年是平年
int sum = 0; //保存输出的第几天结果
for(int i = 0; i < m - 1; i++) {
sum += a[i]; //相当于 sum = sum + a[i], 表示前面的月份之和
}
if(m > 2)
if(y%4 == 0 && y%100 != 0 || y%400 == 0)
sum++; //满足条件就表示是闰年,二月分有29天
sum += d; // 最后加上该月份天数
printf("Today is the %dth day of the year.\n", sum); //输出结果
return 0;
}
终端输出结果:
所以今年的开学日期是本年第245天啊哈哈