题目
定义一个函数,其参数为年、月、日的值,返回这一天为该年的第几天。要求在main函数中输入年月日,然后调
用这个函数求值,并在main函数中输出结果。
int days(int y, int m, int d);
int main()
{
int year, month, day;
cout<<"输入年 月 日"<<endl;
cin>>year>>month>>day;
cout<<"这是该年的第"<<days(year, month, day)<<"天"<<endl;
return 0;
}
int days(int y, int m, int d)
{ }
/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称: 当年第几天.cpp
* 作 者:冷基栋
* 完成日期:2014年 11 月 10 日
* 版 本 号:v1.0
*
* 问题描述:定义一个函数,其参数为年、月、日的值,返回这一天为该年的第几天。要求在main函数中输入年月日,然后调用这个函数求值,并在main函数中输出结果。
* 输入描述:年月日
* 程序输出: 这一天为该年的第几天
*/
#include <iostream>
using namespace std;
int days(int y, int m, int d);
int main()
{
int year, month, day;
cout<<"输入年 月 日"<<endl;
cin>>year>>month>>day;
cout<<"这是该年的第"<<days(year, month, day)<<"天"<<endl;
return 0;
}
int days(int y, int m, int d)
{
int sum=d,i;
for(i=1;i<m;++i)
{
switch(i)
{
case 2:
{
if((y%4==0&&y%100!=0)||y%400==0)
sum+=29;
else
sum+=28;
}
break;
case 4:
case 6:
case 9:
case 11:
sum+=30;
break;
default:
sum+=31;
}
}
return sum;
}
运行结果:
知识点总结:
switch 用if做太麻烦
学习心得:
好好学习天天向上