![]() |
#2
Noll_Nie2011-11-01 23:08
![]() #include <iostream> using namespace std; bool CheckValid(int *,int *,int *); int GetData(int *, int *, int *); int main(int argc, char* argv[]) { int a,b,c; //a,b,c=GetData(); GetData(&a,&b,&c); CheckValid(&a,&b,&c); return 0; } bool CheckValid(int *month_ptr,int *data_ptr,int *year_ptr) { //if(*month_ptr==(1||3||5||7||8||10||12)) if(*month_ptr==1 || *month_ptr==3 || *month_ptr==5 || *month_ptr==7 || *month_ptr==8 || *month_ptr==10 || *month_ptr==12) { if(*data_ptr>31) { cout<<"输入日期错误"<<endl; return false; } else return true; } else if(*month_ptr==2) { if(*year_ptr%4==0) { if(*data_ptr>29) { cout<<"输入日期错误"<<endl; return false; } else return true; } else if(*data_ptr>28) { cout<<"输入日期错误"<<endl; return false; } else return true; } else { if(*data_ptr>30) { cout<<"输入日期错误"<<endl; return false; } else return true; } } int GetData(int *month_ptr, int *data_ptr, int *year_ptr) { //int month=0,data=0,year=0; //int *month_ptr=&month; //int *data_ptr=&data; //int *year_ptr=&year; cout<<"请输入你要转换的日期(格式为:月/日/年)"<<endl; cin>>*month_ptr>>*data_ptr>>*year_ptr; //return (*month_ptr,*data_ptr,*year_ptr); return 0; } 就是那个得到日期的函数的问题吧 ,还有就是if条件的地方://if(*month_ptr==(1||3||5||7||8||10||12)) if(*month_ptr==1 || *month_ptr==3 || *month_ptr==5 || *month_ptr==7 || *month_ptr==8 || *month_ptr==10 || *month_ptr==12) |

#include "stdafx.h"
#include <iostream>
using namespace std;
bool CheckValid(int *,int *,int *);
int GetData();
int _tmain(int argc, _TCHAR* argv[])
{
int a,b,c;
a,b,c=GetData();
CheckValid(&a,&b,&c);
return 0;
}
bool CheckValid(int *month_ptr,int *data_ptr,int *year_ptr)
{
if(*month_ptr==(1||3||5||7||8||10||12))
{
if(*data_ptr>31)
{
cout<<"输入日期错误"<<endl;
return false;
}
else
return true;
}
else if(*month_ptr==2)
{
if(*year_ptr%4==0)
{
if(*data_ptr>29)
{
cout<<"输入日期错误"<<endl;
return false;
}
else
return true;
}
else
if(*data_ptr>28)
{
cout<<"输入日期错误"<<endl;
return false;
}
else
return true;
}
else
{
if(*data_ptr>30)
{
cout<<"输入日期错误"<<endl;
return false;
}
else
return true;
}
}
int GetData()
{
int month=0,data=0,year=0;
int *month_ptr=&month;
int *data_ptr=&data;
int *year_ptr=&year;
cout<<"请输入你要转换的日期(格式为:月/日/年)"<<endl;
cin>>*month_ptr>>*data_ptr>>*year_ptr;
return (*month_ptr,*data_ptr,*year_ptr);
}
我要是输入2 30 2001 不报日期错误,调试了下也看不懂,请高手指点下 #include <iostream>
using namespace std;
bool CheckValid(int *,int *,int *);
int GetData();
int _tmain(int argc, _TCHAR* argv[])
{
int a,b,c;
a,b,c=GetData();
CheckValid(&a,&b,&c);
return 0;
}
bool CheckValid(int *month_ptr,int *data_ptr,int *year_ptr)
{
if(*month_ptr==(1||3||5||7||8||10||12))
{
if(*data_ptr>31)
{
cout<<"输入日期错误"<<endl;
return false;
}
else
return true;
}
else if(*month_ptr==2)
{
if(*year_ptr%4==0)
{
if(*data_ptr>29)
{
cout<<"输入日期错误"<<endl;
return false;
}
else
return true;
}
else
if(*data_ptr>28)
{
cout<<"输入日期错误"<<endl;
return false;
}
else
return true;
}
else
{
if(*data_ptr>30)
{
cout<<"输入日期错误"<<endl;
return false;
}
else
return true;
}
}
int GetData()
{
int month=0,data=0,year=0;
int *month_ptr=&month;
int *data_ptr=&data;
int *year_ptr=&year;
cout<<"请输入你要转换的日期(格式为:月/日/年)"<<endl;
cin>>*month_ptr>>*data_ptr>>*year_ptr;
return (*month_ptr,*data_ptr,*year_ptr);
}