这段c代码改成c++怎么弄? 高分加急

#include<stdio.h>#include<conio.h>#include<stdlib.h>intIsLeapYear(int);//该函数判断是否为闰年vo... #include <stdio.h>
#include<conio.h>
#include<stdlib.h>
int IsLeapYear(int); // 该函数判断是否为闰年
void main()
{
int i;
int day;
int year;
int temp;

long int Year_days = 0;
int Year_Start = 1;
int Per_Year_Days;
// 该数组存储每个月的天数,若为闰年,则二月由最后一个数表示
int month_day[]={31,28,31,30,31,30,31,31,30,31,30,31,29};

printf("Please enter the year: ");
scanf("%d",&year);

// 这个循环的作用是计算从公元1年到当前年的总天数
// 也就是Year_days(总天数)的值
while(Year_Start < year)
{
if( IsLeapYear(Year_Start))
Per_Year_Days = 366;
else
Per_Year_Days = 365;

Year_days = Year_days + Per_Year_Days;
Year_Start++;
}
// 循环输出每个月的日历
for( temp = 1; temp <=12; temp++ )
{
switch( temp )
{
case 1:
printf(" January <%d>\n",year);
break;
case 2:
printf(" February <%d>\n",year);
break;
case 3:
printf(" March <%d>\n",year);
break;
case 4:
printf(" April <%d>\n",year);
break;
case 5:
printf(" May d>\n",year);
break;
case 6:
printf(" June <%d>\n",year);
break;
case 7:
printf(" July <%d>\n",year);
break;
case 8:
printf(" August <%d>\n",year);
break;
case 9:
printf(" September<%d>\n",year);
break;
case 10:
printf(" October <%d>\n",year);
break;
case 11:
printf(" November <%d>\n",year);
break;
case 12:
printf(" December <%d>\n",year);
break;
}
// 因为公元1年的1月1日为星期一,所以用总天数Year_days除以7所得的
// 余数就是该天的星期数,余数为0则为星期天
i = Year_days % 7;
printf("---------------------------\n");
printf("Mon Tue Wed Thu Fri Sat Sun\n");

//打印一定量的空格,以便对齐相应的星期
while(i>0)
{
printf(" ");
i = i - 1;
}

day = 1; // 每个月日期从 1 开始

// 如果该年是闰年,则二月有29天
if(IsLeapYear(year) && temp == 2)
{
while(day <=month_day[12])
{
if(Year_days % 7 == 0)
printf("\n"); // 每一周换一行

// %3d为格式化输出语句,%d表示输出的是十进制数
// 若在d的前面加上一个数字,则表示用该数字的宽度来
// 输出相应参数表示的内容,这样便于数字的对齐
printf("%3d ",day);

// 每输出一天,则总天数增加1
Year_days = Year_days + 1;

// 该月的天数增加1
day = day + 1;
}
}
else
{
while (day <= month_day[temp-1])
{
if(Year_days % 7 == 0)
printf("\n");
printf("%3d ",day);
Year_days = Year_days + 1;
day = day + 1;
}
}
printf("\n\n");
}
getch();
}

// 判断闰年
// <常识> 如果某年能被4或400整除(能被4整除时要除开100)则该年为闰年
//
int IsLeapYear( int year )
{
if ((year %4 == 0) && (year % 100 != 0) || (year % 400 == 0) )
return 1;
else
return 0;
}
好的再+100
展开
 我来答
linzhonghou
推荐于2016-06-16 · TA获得超过274个赞
知道小有建树答主
回答量:143
采纳率:0%
帮助的人:152万
展开全部
其实差别不大!都一样的。
#include<conio.h>
#include<iostream.h>
#include <iomanip.h>
int IsLeapYear(int); // 该函数判断是否为闰年
void main()
{
int i;
int day;
int year;
int temp;

long int Year_days = 0;
int Year_Start = 1;
int Per_Year_Days;
// 该数组存储每个月的天数,若为闰年,则二月由最后一个数表示
int month_day[]={31,28,31,30,31,30,31,31,30,31,30,31,29};

cout<<"Please enter the year: ";
cin>>year;

// 这个循环的作用是计算从公元1年到当前年的总天数
// 也就是Year_days(总天数)的值
while(Year_Start < year)
{
if( IsLeapYear(Year_Start))
Per_Year_Days = 366;
else
Per_Year_Days = 365;

Year_days = Year_days + Per_Year_Days;
Year_Start++;
}
// 循环输出每个月的日历
for( temp = 1; temp <=12; temp++ )
{
switch( temp )
{
case 1:
cout<<"January "<<year<<endl;
break;
case 2:
cout<<" February "<<year<<endl;
break;
case 3:
cout<<" March "<<year<<endl;
break;
case 4:
cout<<" April "<<year<<endl;
break;
case 5:
cout<<" May "<<year<<endl;
break;
case 6:
cout<<" June "<<year<<endl;
break;
case 7:
cout<<" July "<<year<<endl;
break;
case 8:
cout<<" August "<<year<<endl;
break;
case 9:
cout<<" September "<<year<<endl;
break;
case 10:
cout<<" October "<<year<<endl;
break;
case 11:
cout<<" November "<<year<<endl;
break;
case 12:
cout<<" December "<<year<<endl;
break;
}
// 因为公元1年的1月1日为星期一,所以用总天数Year_days除以7所得的
// 余数就是该天的星期数,余数为0则为星期天
i = Year_days % 7;
cout<<"----------------------------"<<endl;
cout<<" Mon Tue Wed Thu Fri Sat Sun"<<endl;

//打印一定量的空格,以便对齐相应的星期
while(i>0)
{
cout<<" ";
i = i - 1;
}

day = 1; // 每个月日期从 1 开始

// 如果该年是闰年,则二月有29天
if(IsLeapYear(year) && temp == 2)
{
while(day <=month_day[12])
{
if(Year_days % 7 == 0)
cout<<endl; // 每一周换一行

// %3d为格式化输出语句,%d表示输出的是十进制数
// 若在d的前面加上一个数字,则表示用该数字的宽度来
// 输出相应参数表示的内容,这样便于数字的对齐
cout<<setw(4)<<day;

// 每输出一天,则总天数增加1
Year_days = Year_days + 1;

// 该月的天数增加1
day = day + 1;
}
}
else
{
while (day <= month_day[temp-1])
{
if(Year_days % 7 == 0)
cout<<endl;
cout<<setw(4)<<day;
Year_days = Year_days + 1;
day = day + 1;
}
}
cout<<endl<<endl;
}
getch();
}

// 判断闰年
// <常识> 如果某年能被4或400整除(能被4整除时要除开100)则该年为闰年
//
int IsLeapYear( int year )
{
if ((year %4 == 0) && (year % 100 != 0) || (year % 400 == 0) )
return 1;
else
return 0;
}
chinawiny
2009-06-18 · TA获得超过121个赞
知道答主
回答量:65
采纳率:0%
帮助的人:0
展开全部
一般来说其他基本不变,
c++没有内置输入输出功能。原因:脱离系统硬件。这正是c++的优点之一。如果为某操作系统设计了这种功能,那么,c++也就绑死在这系统上了。通过include 标准输入输出文件,我们可以方便的实现所需要的功能。C-programmer 都很熟悉stdio.h这个文件,以及诸如printf 和scanf这两个函数,c++做了改进,引入了iostream,注意,不是 iostream.h(这是相关标准制定前使用的文件,未包括在std空间中。

只需要把

把输出语句printf("%3d ",day);修改为(cout<<"输出语句"<<endl;)
cout << day;

把输入语句scanf("%d",&year);修改为(cout<<"请输入year"<<endl; )
cin>>year;

其他的输入输出做相应的类似修改就可以啦!

有什么不清楚可以联系我!(by chinawiny)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式