• [YTU]_2865( 结构体--日期计算)


    已经声明了一个日期的结构体类型,如下
    struct  Date{
    int year;
    int month;
    int day;
    };
    定义一个日期变量,进行年、月、日的输入,计算该日期是本年中的第几天。
    在下面代码的基础上完成,提交时只提交begin所在行和end所在行之间的代码
    #include <iostream>
    using namespace std;
     
    struct Date{
    int year;
    int month;
    int day;
    };
     
    int main()
    {
      Date d;
      cin>>d.year>>d.month>>d.day;
      //bengin
     
      //end
      return 0;
    }

    输入

    年 月  日

    输出

    该日期在本年中的第几天

    样例输入

    2002 3 1
    

    样例输出

    60

    提示

    别忘记考虑闰年

    #include <iostream>
    using namespace std;
     
    struct Date{
    int year;
    int month;
    int day;
    };
     
    int main()
    {
      Date d;
      cin>>d.year>>d.month>>d.day;
      //bengin
       
        if((d.year%4==0&&d.year%100!=0)||(d.year%400==0))
        {
            switch(d.month)
            {
            case 1:cout<<d.day<<endl;break;
            case 2:cout<<31+d.day<<endl;break;
            case 3:cout<<31+29+d.day<<endl;break;
            case 4:cout<<31+29+31+d.day<<endl;break;
            case 5:cout<<31+29+31+30+d.day<<endl;break;
            case 6:cout<<31+29+31+30+31+d.day<<endl;break;
            case 7:cout<<31+29+31+30+31+30+d.day<<endl;break;
            case 8:cout<<31+29+31+30+31+30+31+d.day<<endl;break;
            case 9:cout<<31+29+31+30+31+30+31+31+d.day<<endl;break;
            case 10:cout<<31+29+31+30+31+30+31+31+30+d.day<<endl;break; 
            case 11:cout<<31+29+31+30+31+30+31+31+30+31+d.day<<endl;break; 
            case 12:cout<<31+29+31+30+31+30+31+31+30+31+30+d.day<<endl;break; 
            }
        }
        else
        {
            switch(d.month)
            {
            case 1:cout<<d.day<<endl;break;
            case 2:cout<<31+d.day<<endl;break;
            case 3:cout<<31+28+d.day<<endl;break;
            case 4:cout<<31+28+31+d.day<<endl;break;
            case 5:cout<<31+28+31+30+d.day<<endl;break;
            case 6:cout<<31+28+31+30+31+d.day<<endl;break;
            case 7:cout<<31+28+31+30+31+30+d.day<<endl;break;
            case 8:cout<<31+28+31+30+31+30+31+d.day<<endl;break;
            case 9:cout<<31+28+31+30+31+30+31+31+d.day<<endl;break;
            case 10:cout<<31+28+31+30+31+30+31+31+30+d.day<<endl;break; 
            case 11:cout<<31+28+31+30+31+30+31+31+30+31+d.day<<endl;break; 
            case 12:cout<<31+28+31+30+31+30+31+31+30+31+30+d.day<<endl;break; 
            }
        }
     
      //end
      return 0;
    }

  • 相关阅读:
    SQL的Demo 由Access改为SQLite
    Delphi10.3ComboBoxEx下拉左边带图标
    uniGUI学习之IconCombobox(53)
    MySQL的图形GUI界面Navicat操作(03)
    delphi10.3安装使用mySQL(02)从SQLite 转移至Mysql
    [转] Java虚拟机原理图解 系列
    [转]ASM插入代码 visitFieldInsn
    [转]大话+图说:Java字节码指令——只为让你懂
    [转]smali语言之locals和registers的区别
    [转]Smali浅析及dex,java互转
  • 原文地址:https://www.cnblogs.com/sxy201658506207/p/7586385.html
Copyright © 2020-2023  润新知