C/C++练习题 定义一个日期变量,进行年、月、日的输入,计算该日期是本年中的第几天。

问题及代码:
/*
 *Copyright(c)2016,烟台大学计算机与控制工程学院
 *All right reserved.
 *文件名称:main.cpp
 *作    者:郝昱猛
 *完成日期:2016年4月28日
 *版 本 号:v1.0
 *
 *问题描述:.定义一个日期变量,进行年、月、日的输入,计算该日期是本年中的第几天。
 *程序输出:
 */
#include <iostream>
using namespace std;
struct y_m_d
{
    int year;
    int month;
    int day;
};
int is_runnian(int iyear)
{
    if((iyear%4==0&&iyear%100!=0)||(iyear%400==0))
        return 1;
    else
        return 0;
}
int sday(int num,int iyear)
{
    switch(num)
    {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
        return 31;
    case 4:
    case 6:
    case 9:
    case 11:
        return 30;
    case 2:
        if(is_runnian(iyear))
            return 29;
        else
            return 28;
    }
    return 0;
}

int days(y_m_d date)
{
    int i,s=0;
    for(i=1;i<=date.month;i++)
        s=s+sday(i,date.year);
        return s;
}
int main()
{
  y_m_d date;
  int days(y_m_d);
  int day_sum;
  cin>>date.year>>date.month>>date.day;
  day_sum=days(date);
  cout<<day_sum<<endl;
  return 0;
}


运行结果:

©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值