问题描述
- 将日历两个月并排输出
-
#include <iostream> #include <iomanip> using namespace std; char *WD=" Sun Mon Tue Wed Thu Fri Sat"; char *month[12]={"一月","二月","三月","四月","五月","六月","七月","八月","九月", "十月","十一月","十二月"}; static day[12]={31,28,31,30,31,30,31,31,30,31,30,31}; int leap(int year); int week(int year); int main() {int i,j,year,date; cout<<"请输入年份:"; cin>>year; if(leap(year)) day[1]=29; //确定2月份的日期 date=week(year); cout<<setw(21)<<endl; //打印年的标题 for(i=0;i<12;i++) //控制12个月份的打印,循环12次 { cout<<endl; for(int k=0;k<35;k++) cout<<" "; cout<<endl<<setw(21)<<month[i]; cout<<endl<<WD<<endl; //打印星期的标题 for(k=0;k<date;k++) //格式控制 cout<<" "; for(j=1;j<=day[i];j++) //日期打印的控制 { if((j+date)%7==1) cout<<endl; cout<<setw(5)<<j; } cout<<endl; for(k=0;k<32;k++) //格式控制 cout<<" "; date=date+day[i]%7; if(date>6) date-=7; } cout<<endl; } int leap(int year) { //该函数确定年份是闰年,或平年 int leap; if(year%400==0||year%100!=0&&year%4==0) leap=1; else leap=0; return leap; } int week(int year) { //用于计算年份的1月1日是星期几 if (year%400==0||year%100!=0&&year%4==0) return (year-1+year/4-year/100+year/400)%7; else return (year+year/4-year/100+year/400)%7; }
时间: 2024-08-31 00:36:00