解题思路:
1、记录一下每个月份的天数,默认使用平年。闰年的话最后再加一天就行。
注意事项:
参考代码:
#include<stdio.h> //关于闰年的宏定义 #define LEAP_YEAR(y) ((y%4==0 && y%100!=0) || (y%400)==0)?1:0 typedef struct _time_ { int year; int month; int day; }time; int main() { time t; int num = 0, i = 0;; //默认为平年 int days[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; scanf("%d %d %d", &(t.year), &(t.month), &(t.day)); for(i = 0; i < t.month-1; i++) { num+=days[i]; } num+=t.day; //2月之后才计算闰年的影响 if(t.month > 2) { num+=LEAP_YEAR(t.year); } printf("%d\n", num); return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:632 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1514 |
C语言训练-最大数问题 (C语言代码)浏览:633 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:438 |
字符串问题 (C语言代码)浏览:1502 |
用筛法求之N内的素数。 (C语言代码)浏览:1231 |
简单的a+b (C语言代码)浏览:573 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:1222 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:535 |
C语言训练-数字母 (C语言代码)浏览:600 |