_c++编写一个程序,用户任意输入一个日期,确定这天是一年中的第多少天(1~366),是星期几? 【样式输

如题所述

#include "iostream.h"
main()
{
int day,month,year,sum,leap;
cout<<"\n请输入年,月,日\n";
cin>>year>>month>>day;
switch(month) //先计算某月以前月份的总天数
{
case 1:sum=0;break; //比如输入1,则1月份以前的天数为0,程序后面再加上多少天
case 2:sum=31;break;
case 3:sum=59;break;//先不管那年是不是闰年,2月份按28天算
case 4:sum=90;break;
case 5:sum=120;break;
case 6:sum=151;break;
case 7:sum=181;break;
case 8:sum=212;break;
case 9:sum=243;break;
case 10:sum=273;break;
case 11:sum=304;break;
case 12:sum=334;break;
default:cout<<"输入错误";break;
}
sum=sum+day; //再加上某天的天数
if(year%400==0||(year%4==0&&year%100!=0)) //判断是不是闰年(闰年的定义:能被400整除,或者能被4整除,且不能被100整除)
leap=1;
else
leap=0;
if(leap==1&&month>2) //如果是闰年且月份大于2,总天数应该加一天
sum++;

cout<<"这天是这一年的第"<<sum<<"天"<<"\n";

}

望采纳,自己以前编的
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-05-22
#include<stdio.h>
void main()
{
int year,month,day,a,s;
while(printf("请输入年份:"),scanf("%4d%d%d",&year,&month,&day))
{
if(year%4==0)
{
if(year%400==0||year%100!=0)
a=1;//1代表闰年
else a=0;
}
else a=0;
int y=0;
switch(month)
{
case 12:y+=30;
case 11:y+=31;
case 10:y+=30;
case 9:y+=31;
case 8:y+=31;
case 7:y+=30;
case 6:y+=31;
case 5:y+=30;
case 4:y+=31;
case 3:y+=28;
case 2:y+=31;
case 1:y+=0;
}
if(month>2)//大于2月才加上多余的1天
s=a+y+day;
else s=y+day;
printf("%-4d-%-2d-%-2d是该年的第%d天\n",year,month,day,s);
}
}本回答被提问者和网友采纳

_c++编写一个程序,用户任意输入一个日期,确定这天是一年中的第多少天...
cout<<"这天是这一年的第"<<sum<<"天"<<"\\n";} 望采纳,自己以前编的

c++如何随便输入一个年份,就能判断是不是闰年,是一年的第几天,是星期...
void main(){int y,m,d,w,sum,i;int sumy=0;int total=0;printf ("请输入年 月 日:");scanf ("%d %d %d",&y,&m,&d);for(i=1;i<=y-1;i++){if((i%4==0&&i%100!=0)||(i%400==0))sum=366;else sum=365;total=total+sum;}\/* 计算y-1年的天数*\/ if((y%4=...

C++能输入某年某月某日 输出是该年的第几天星期几的代码
cout<<"这天是该年的第"<<days(m)<<"天。"<<endl;cout<<"请依次输入年·月·日:"<<endl;cin>>p1>>p2>>p3;if(p1%4==0&&p1%100!=0||p1%400==0)a[1]=29;if(p2>12||p3>a[p2-1])cout<<"您的输入有误!"<<endl;else n.set(p1,p2,p3);cout<<"这天是该年的第"<<...

用C++编程,输入一个日期,求该日期在当年的第几周
int first=firstday(year);cout<<"属于该年的第"<<sum<<"天"<<"星期"<<(first-1+sum)%7<<endl;system("pause");return 0;} int smonth(int m){ switch(m){ 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...

问:c++程序设计: 1,输入年月日,输出距离今天还有多少天,星期几,是否是...
= 0) || year % 400 == 0;}\/\/ 获取当天是一年中的第几天int getYearDay(const int year, const int month, const int mday){int yday = 0;for (int i = 1; i < month; i++){switch (i){case 1:case 3:case 5:case 7:case 8:case 10:case 12:yday += 31;break;...

C++习题 给出年、月、日,计算该日是该年的第几天?(高分求)
int main(){ int a[12] = {31,28,31,30,31,30,31,31,30,31,30,31};cout << "请输入年月日(YYYY-MM-DD):";char s[11] = {'\\0'},year[5] = {'\\0'},month[3] = {'\\0'},day[3] = {'\\0'};int y,m,d,sum = 0;cin >> s;int size = strlen(s);for(int...

用VC++设计一个由日期判断对应是星期几的程序 ,用c++写
leap=1;else leap=0;if(leap==1&&month>2) \/*如果是闰年且月份大于2,总天数应该加一天*\/ sum++;a=(year-1)\/4-(year-1)\/100+(year-1)\/400;sum=(a*366)+((year-a-1)*365)+sum;b=sum%7;switch(b){ case 1:cout<<"今天是星期一"<<endl;break;case 2:cout<<"今天是星期二...

用C++实现 输入一个日期 然后加任意天数后,输出正确的日期!
计算好每个月一号离1.1号有多少天放在一个数组里面(按不是闰年算),以后要用到;int days[]= ;(1)年月合法性检查(开始日期和结束日期)a. 年份 在1900到3000 b. 月份 在1到12 (2)取得两个日期中当月的最大天数 比如1900.1.11 ~ 1991.2.25 则为Day_Max_Start= 31和Day_Max_End ...

1.C++ 给出年、月、日,计算该日是该年的第几天。
即该年10月1 日为星期六。还有一种方法:http:\/\/column.bokee.com\/30137.html 最常见的公式: W = [Y-1] + [(Y-1)\/4] - [(Y-1)\/100] + [(Y-1)\/400] + D Y是年份数,D是这一天在这一年中的累积天数,也就是这一天在这一年中是第几天。 最好用的是蔡勒公式: W = [C...

用C++编写 输入一个年份,输出是在屏幕上显示该年的日历。假定输入的年...
c=c+month_day(year,m); \/\/这是计算输入的月分的累计天数 c=c+day; \/\/计算日期在这一年中是第几天 s=year-1+(int)(year-1)\/4+(int )(year-1)\/100+(int)(year-1)\/400-40+c; \/*这是计算日期对应的星期公式,这个公式可在网上查到*\/ return ((int)s%7); \/\/与上语句同属...

相似回答