21xrx.com
2024-09-19 09:42:58 Thursday
登录
文章检索 我的文章 写文章
C++编写万年历简单代码
2023-07-07 15:50:29 深夜i     --     --
C++ 万年历 编写 简单 代码

有很多编程语言可以用来编写万年历程序,其中C++是一种非常流行的语言。C++编写万年历可以使用多种方法,下面介绍一种简单的代码。

首先,我们需要定义一个结构体来存储年、月、日等信息。这个结构体可以包含年份、月份、日期和星期几等成员。我们还需要定义一个函数来判断某一年是否为闰年,因为闰年的计算方法稍微有些复杂。

接下来,我们可以定义一个函数来输入年份和月份,并输出整个月份的日历。这个函数可以使用switch语句来判断每个月份的天数,并根据每月第一天是星期几来输出相应的空格。最后,我们可以使用循环语句来输出所有日期。

下面是一个简单的C++代码示例:


#include <iostream>

using namespace std;

struct date

  int year;

int leap(int year) //判断是否为闰年

{

  if(year%4==0 && year%100!=0 || year%400==0)

    return 1;

  else

    return 0;

}

void calendar(int year, int month)

{

  date month_first;

  month_first.year = year;

  month_first.month = month;

  month_first.day = 1;

  int day_count = 0;

  switch(month)

  {

    case 1: day_count = 31; month_first.week = 2; break;

    case 2: if(leap(year)==1) day_count = 29; else day_count = 28; month_first.week = 5; break;

    case 3: day_count = 31; month_first.week = 5; break;

    case 4: day_count = 30; month_first.week = 1; break;

    case 5: day_count = 31; month_first.week = 3; break;

    case 6: day_count = 30; month_first.week = 6; break;

    case 7: day_count = 31; month_first.week = 1; break;

    case 8: day_count = 31; month_first.week = 4; break;

    case 9: day_count = 30; month_first.week = 7; break;

    case 10: day_count = 31; month_first.week = 2; break;

    case 11: day_count = 30; month_first.week = 5; break;

    case 12: day_count = 31; month_first.week = 7; break;

  }

  cout << " SUN MON TUE WED THU FRI SAT" << endl;

  for(int i=1; i<month_first.week; i++) //输出第一行的空格

    cout << "   ";

  for(int i=1; i<=day_count; i++) //输出每个日期

  {

    if(i<10)

      cout << "  " << i;

    else

      cout << " " << i;

    month_first.week++;

    if(month_first.week>7) //每个星期的最后一天

    

      month_first.week = 1;

      cout << endl;

    

  }

}

int main()

{

  int year, month;

  cout << "Please enter the year:";

  cin >> year;

  cout << "Please enter the month:";

  cin >> month;

  calendar(year, month);

  return 0;

}

这段简单的C++代码可以让我们实现一个万年历程序。它可以根据用户输入的年份和月份来输出整个月份的日历,让用户方便地查询每一天的日期和星期几。同时,这个代码也可以让初学者更好地理解C++语言的基础知识,比如结构体、判断语句、循环语句等。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复