当前位置:IT快活林→快活林学院网页制作

求一个简单的C++程序

作者:本站整理   发布时间:2008-9-4 8:05:33


一个简单的程序(Procedures)(Procedures)
悬赏分:50 - 离问题结束还有 14 天 14 小时(Hour)
1.定义一个结构体变量(包括年,月,日),输入年,月,日.要求编一C++程序(Procedures)(Procedures):
A.计算该日在本年中是第几天?注意闰年问题
闰年的条件:能被4整除,但不能被100整除,能被100
整除,又能被400整除的年份绝大部分的都是闰年.
B.计算这一年每个月最后一天是本年中的第几天?并将结
果存放于文件中.

请教IT快活林的IT快活林的计算机高手,谢了,能在关键地方写些注释更好.另外程序(Procedures)(Procedures)希望不要太复杂.
---
最理想的参考答案(IT快活林站长与网友共同得出来的,仅供参考) - 由投票者26天前选出#include<iostream.h>
#include<fstream.h>
class Date
{
private:
int year;
int month;
int day;
public:
Date(){}
void SetDate(int y,int m,int d)
{
year=y;
month=m;
day=d;
}
int IsLeap(int temp);
void JudgeDay(int y,int m,int d);
void JudgeMonth(int y,int m,int d);
};

int Date::IsLeap(int temp)
{
int leap;
if(temp%4==0)
{
if(temp%100==0)
{
if(temp%400==0)
leap=1;
else
leap=0;
}
else
leap=1;
}
else
leap=0;
return leap;
}

void Date::JudgeDay(int y,int m,int d)
{
int days[12]={31,0,31,30,31,30,31,31,30,31,30,31};
int count=0;
if(IsLeap(y))
days[1]=29;
else
days[1]=28;
for(int i=0;i<m-1;i++)
{
count+=days[i];
}
cout<<y<<"."<<m<<"."<<d<<" Is The "<<count+d<<" Day Of This Year."<<endl;
ofstream fout("Date.txt");
if(!fout)
cout<<"Error ! Cannot Open Input File."<<endl;
fout<<y<<".";
fout<<m<<".";
fout<<d<<"."<<endl;
fout<<y<<"."<<m<<"."<<d<<" Is The "<<count+d<<" Day Of This Year.";
fout.close();
}

void Date::JudgeMonth(int y,int m,int d) {}

void main()
{
int year,month,day;
cout<<"Enter The Year:"<<endl;
cin>>year;
cout<<"Enter The Month:"<<endl;
cin>>month;
cout<<"Enter The Day:"<<endl;
cin>>day;
Date date;
date.SetDate(year,month,day);
date.IsLeap(year);
date.JudgeDay(year,month,day);
}


程序(Procedures)(Procedures)通过编译,成功运行了.

学编程还是要IT快活林网的站长您自己来写代码,所以留了JudgeMonth(int y,int m,int d)方法给您,跟JudgeDay(int y,int m,int d)方法差不多,您自己试一试吧!其余的代码可以直接或者间接使用了
---
#include "iostream.h"
struct a{
int year;
int month;
int day;
}b; //定义结构体(可以用类取代 比较好)
main()
{
cout<<"input a num(year)"<<b.year;
if(b.year%4==0&&b.year.....) //这里判断闰年的条件
cout<<b.year<<"-- 是闰年" //以上是A部分


}

实现B的代码的原理:
I.判断年性
II.一个月一般是30天和31天交差的可以用++的方法实现记录天数
III.判断特殊情况 2月的28天再循环中用if语句实现
IV.把记录的数字存储再一个数组中 要是输出到文件中要用文件操作函数
基本思路就真样了 具体实现自己弄吧 思路清了 代码就快了
》热 点 关 注