该日是该年第几天

来源:互联网 发布:网络兼职有哪些工作 编辑:程序博客网 时间:2024/04/29 14:24
/* * 文件名称:2012-3.cpp * 作    者:  胡颖 * 完成日期:2017 年 3月 13 日 * 输入描述:输入某年月日 * 问题描述:计算该日是该年第几天 * 程序输出:输出该日是该年的第几天 * 问题分析:用结构体和switch语句实现 * 算法设计:略 */#include <stdio.h> struct Date    {        int year;        int month;        int day;    };int main(){    struct Date date;    printf("请输入年、月、日:\n");    scanf("%d-%d-%d",&date.year,&date.month,&date.day);    int days;    switch(date.month)    {        case 1:days=date.day;break;        case 2:days=date.day+31;break;        case 3:days=date.day+59;break;        case 4:days=date.day+90;break;        case 5:days=date.day+120;break;        case 6:days=date.day+151;break;        case 7:days=date.day+181;break;        case 8:days=date.day+212;break;        case 9:days=date.day+243;break;        case 10:days=date.day+273;break;        case 11:days=date.day+304;break;        case 12:days=date.day+334;break;    }    if((date.year%4==0&&date.year%100!=0||date.year%400==0)&&date.month>=3)//闰年三月份以后多一天    days+=1;    printf("%d年%d月%d日是%d年的第%d天\n",date.year,date.month,date.day,date.year,days);    return 0;}

运行结果:


总结:这个以前用c++写过,基本是一样的,只是输入输出的语句不同,这次也是为了复试练练手温习一下,毕竟好久没学了,生疏了。

0 0