进阶项目6-日期结构体

来源:互联网 发布:好看的网络拓扑 编辑:程序博客网 时间:2024/05/21 22:54

任务和代码:定义一个结构体变量(包括年、月、日),要求输入年、月、日,计算输出该日是该年的第几天

/*文件名:main.c作者:小风景完成日期:2016.7.28问题描述:定义一个结构体变量(包括年、月、日),要求输入年、月、日,计算输出该日是该年的第几天程序输出:*/#include <stdio.h>int countday(struct Date *date);int d[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};struct Date{    int year;    int month;    int day;};int main(){    struct Date date;    printf("input year,month,day:");    scanf("%d %d %d", &date.year, &date.month, &date.day);    int days;    days = countday(&date);    printf("%d月%d日是%d年的第%d天.\n", date.month, date.day, date.year, days);    return 0;}int countday(struct Date *date){    int days = 0;    int i = 0;    //将前n个月的天数加起来    for(i = 0;i < date->month;i++)    {        days += d[i];    }    //加上这个月的天数    days += date->day;    //如果是润年并且大于二月,应该加上1天    if((date->month > 2) && (date->year %4 == 0 && date->year % 100 != 0 || date->year % 400 == 0))    {        days += 1;    }    return days;}


程序运行结果;



0 0
原创粉丝点击