问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

关于Visual studio中用C++语言编写程序的一个问题。说要输入几几年几...

发布网友 发布时间:2024-10-02 16:29

我来回答

1个回答

热心网友 时间:2024-10-19 05:33

方法有两种:一种是自己写,一种是系统计算。

方法一:(自己写,附思路)

1、设定一个对比日期,例如设2016/10/24是周一。

2、建立保存月份的数组

3、计算设定日期到输入日期总共经历多少天

4、(天数+bias)%7==输入日期的周,bias就是偏移值,碰巧设定日期是周一,所以bias为零

方法二:(附代码,VS2012_debug通过)

#include<iostream>
#include<atltime.h>
using namespace std;
int main()
{
 int year;
 int month;
 int day;
 cout << "Input year,month,day" << endl;
 cin >> year >> month >> day;
 CTime t(day,month-1,year);
 switch(t.GetDayOfWeek())
 {
 case 1:cout << "周日" << endl;
  break;
 case 2:cout << "周一" << endl;
  break;
 case 3:cout << "周二" << endl;
  break;
 case 4:cout << "周三" << endl;
  break;
 case 5:cout << "周四" << endl;
  break;
 case 6:cout << "周五" << endl;
  break;
 case 7:cout << "周六" << endl;
  break;
 }
    return 0;
}

 显示当月日历:(思路)

1、设上面方法二的month为当前月,year为当前年。

2、建立一个保存月份日数的int数组。int a={31,28,31,30..............};

3、建立一个函数计算是否为润年

bool leapYear(int year)
{
 if(year % 4 == 0 && year%100!=0 || year % 400 ==0)
  return true;
 else
  return false;
}

4、if(year)a[1]+=1;

5、通过for循环输出日子

for(int i=0;i!=a[month-1];i++)

{

    if(i%7==0)

        cout << endl;

  cout << i  << " ";

}

热心网友 时间:2024-10-19 05:27

方法有两种:一种是自己写,一种是系统计算。

方法一:(自己写,附思路)

1、设定一个对比日期,例如设2016/10/24是周一。

2、建立保存月份的数组

3、计算设定日期到输入日期总共经历多少天

4、(天数+bias)%7==输入日期的周,bias就是偏移值,碰巧设定日期是周一,所以bias为零

方法二:(附代码,VS2012_debug通过)

#include<iostream>
#include<atltime.h>
using namespace std;
int main()
{
 int year;
 int month;
 int day;
 cout << "Input year,month,day" << endl;
 cin >> year >> month >> day;
 CTime t(day,month-1,year);
 switch(t.GetDayOfWeek())
 {
 case 1:cout << "周日" << endl;
  break;
 case 2:cout << "周一" << endl;
  break;
 case 3:cout << "周二" << endl;
  break;
 case 4:cout << "周三" << endl;
  break;
 case 5:cout << "周四" << endl;
  break;
 case 6:cout << "周五" << endl;
  break;
 case 7:cout << "周六" << endl;
  break;
 }
    return 0;
}

 显示当月日历:(思路)

1、设上面方法二的month为当前月,year为当前年。

2、建立一个保存月份日数的int数组。int a={31,28,31,30..............};

3、建立一个函数计算是否为润年

bool leapYear(int year)
{
 if(year % 4 == 0 && year%100!=0 || year % 400 ==0)
  return true;
 else
  return false;
}

4、if(year)a[1]+=1;

5、通过for循环输出日子

for(int i=0;i!=a[month-1];i++)

{

    if(i%7==0)

        cout << endl;

  cout << i  << " ";

}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
山东沃尔德集团集团所辖公司介绍 齐鲁银行无忧贷和市民贷哪个好 什么叫补按揭 后按揭贷款什么意思 买房者续按揭有什么危害 加按揭是什么意思 八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... ...1:输入一个年份,输出是在屏幕上显示该年的日历。假定输入的年份在19... 形容浪费东西的句子形容浪费东西的词语 揍巴是什么意思? 我的微信怎么不能添加对方好友呢? 荣耀V10系统升级以后照片删不掉 南京师范大学商学 与BJD有关的工作.. 南京师范大学考研|书香十足!南师大图书馆也太棒了吧! 南京师范大学图书馆读者培训 南京师范大学图书馆馆舍分馆 南京师范大学图书馆通借通还 南京师范大学图书馆借阅规则 南京师范大学图书馆开放时间 电脑开机后显示一下又重复怎么回事? LED日光灯哪个牌子好 梦见和很丑的人结婚,她很高兴,我家里一贫如洗,我死活不同意,退婚,对方... 梦见自己结婚了女方很丑 滨职中考录取通知单还没有下来吗? 山东工业职业学院07,08年录取分数线多少? 滨职中考发通知书了吗 ...基本功能:输入一个月份,给出2013年这个月的日历,日历要求每行显示7... 现在列支敦士登是不是一个小国家呢? 2016年普通高考三本还有吗 鄫国简介 1986年日历表1986年农历阳历表 1986年日历表 1986年农历阳历 公元前567年是什么世纪什么年代 公元前567年是多少世纪多少年份 尼米亚竞技会创建历史 吃天喜丸怀孕了能要吗 如何在手表上显示农历日期? 我想在珠海开出租车 要什么样的条件和收费 在珠海开出租车要什么手续,要一些什么证件,还有就是要多久时间培训和要... win7系统下使用Outlook Express管理原始邮件及回复邮件的方法_百度知 ... 别人说话都是张嘴就来,我说话总是要想个半天,不然都不知道说什么?如何... 天津的动漫基地在什么地方? 唾手可得和垂手可得的区别 唾手可得和垂手可得的区别是什么_百度... 垂字的读音是什么 天垂的词语 天垂的词语是什么 勾垂的解释 勾垂的解释是什么