当前位置 - 무료 법률 상담 플랫폼 - 지식재산권 전공 - 무릎을 꿇고 C 언어로 쓴 달력 프로그램을 구하다.

무릎을 꿇고 C 언어로 쓴 달력 프로그램을 구하다.

# include & ltiostream & gt

# include & lttime.h & gt

네임스페이스 STD 사용

클래스 달력

{

Intday [2] [12];

공용:

달력 ();

~calendar(){}

윤년 상수

Int 주 (int 년, int 월) 상수;

Voidshowyear () const;

Voidshowmonth () const;

Voidshowday () const;

}

달력:: 달력 ()

{

Int I, j;

Intdays [2] [12] = {3 1, 28,31,30,3/kloc

{31,29,31,30,31,30,31,3/

For(I = 0;; 나<2; I++)

For(j = 0;; J< 12; J++)

Day [I] [j] = days [I] [j];

}

//연도가 윤년인지 확인하고 윤년이면 1 을 반환하고 0 을 반환하지 않습니다.

Int calendar:: 윤년 (int year) 상수

{

만약 (! (연도 %400)|| (연도%100) & & amp! (%4 년차))

1;

그렇지 않으면 0 을 반환합니다

}

//1 년 중 한 달의 첫날은 요일의 함수이고, 0 은 일요일이고, 1 은 월요일이다.

Int calendar::week(int year, int month) 상수

{

Int I, w _ day = 6;;

만약 (기원 2000 년 & gt=0)

{

For(I = 2000;; 나< 연도; I++)

W _ day+=1+leap (I);

}

기타

{

For (I =1999; 나>= 년; 나-)

W _ day+= 6-leap (I);

}

For (I =1; 나< 월; I++)

W _ day+= day[ 윤년] [I-1];

%7 일째를 되돌려줍니다.

}

//연도를 입력하여 올해의 달력을 출력합니다.

Void calendar::showYear () 상수입니다

{

Int I, j;

Int 년, 월, 일, 주;

Int Leap

시스템 ("cls");

Cout & lt& lt "연도를 입력하십시오"

CIN>;; & gt 연도;

윤일 = 윤일 (년);

Cout & lt& lt 연도<& lt "달력 연도" < & ltendl

For (month =1; 월<= 12; 월++)

{

일 = 일 [윤일] [월-1];

주 = 주 (년, 월);

Cout & lt& lt 월<& lt "월"

Cout & lt< "day \ t1\ T2 \ T3 \ T4 \ t5 \ T6" < < 엔델

For(I = 0;; 나<= 일; I++)

{

다음 경우 (i==0)

{

For(j = 0;; J< 주; J++)

Cout & lt< "\ t";

}

기타

{

Cout & lt& lt 나;

((I+ 주) %7 인 경우

Cout & lt< "\ t";

기타

Cout & lt& ltendl

}

}

Cout & lt& ltendl

}

}

//입력된 연월을 통해 이번 달 달력을 출력합니다.

Void calendar::showMonth()const

{

Int I, j;

Int 년, 월, 일, 주;

시스템 ("cls");

Cout & lt& lt "연도와 월을 입력하십시오."

CIN>;; & gt 연도>& gt 월;

일 = 일 [윤일 (년)] [월-1];

주 = 주 (년, 월);

Cout & lt& lt 연도<& lt "연도"

Cout & lt< "day \ t1\ T2 \ T3 \ T4 \ t5 \ T6" < < 엔델

For(I = 0;; 나<= 일; I++)

{

다음 경우 (i==0)

{

For(j = 0;; J< 주; J++)

Cout & lt< "\ t";

}

기타

{

Cout & lt& lt 나;

((I+ 주) %7 인 경우

Cout & lt< "\ t";

기타

Cout & lt& ltendl

}

}

Cout & lt& ltendl

}

//날짜를 입력하여 이 날과 올해의 차이, 오늘이 무슨 날인지, 양력 명절인지 수출한다.

Void calendar::showDay()const

{

Int I, j=0, flag= 1, a[6], sum, Day_tem=0, Week

Int year 1, month 1, day 1, year2, month2, day2, sum day/kr

Time _ t t t

시간 (& ampt);

Day 1=localtime. T)-gt; Tm _ mday

Month 1=localtime. T)-gt; Tm _ mon

연도1= 로컬 시간. T)-gt; Tm _ year+1900;

시스템 ("cls");

Cout & lt& lt 년, 월, 일을 입력하십시오

CIN>;; & gtyear2 & gt& gtmonth2 & gt& gt 다음 날;

Sumday1= localtime (& T)-gt; Tm _ yday

For (I =1; 나 & ltmonth2i++)

{

If (윤년 2)

Sum day2+= day [1] [I-1];

기타

Sumday2+= day [0] [I-1];

}

Sum day2+= day2-1;

If (연도 2 > = 연도1)

{

For (I = year1; 나< 이듬해; I++)

Day _ tem+= 365+leap (I);

If (day _ tem+sum day 2-sum day1> =0)

Cout & lt& lt "거리" << 2 년차<& lt "연도"

기타

Cout & lt& lt "입력한 일수가 이미 지났습니다" < & ltsumday1-sumday2 < & lt "하느님"

}

기타

{

For (I = year2; 나 & ltyear1; I++)

Day _ tem+= 365+leap (I);

If (day _ tem+sumday1-sumday 2 > =0)

Cout & lt& lt "입력한 일수가 이미 지났습니다." < & ltday _ tem+sumday1-sumday2 < & lt "하느님"

기타

Cout & lt& lt "거리" << 2 년차<& lt "연도"

}

Week = week (연도 2, 월 2);

Week = (week+day2-1)% 7;

Cout & lt& lt 2 년차<& lt "연도"

전환 (주)

{

사례 0: cout < Lt "일요일"

사례1:cout < & lt "월요일"

사례 2: cout < & lt "화요일"

사례 3: cout & lt& lt "수요일"

사례 4: cout < & lt "목요일"

사례 5: cout < Lt "금요일"

사례 6: cout < & lt "토요일"

}

Cout & lt& lt 2 년차<& lt "연도"

//65438+ 10 월 마지막 일요일 국제 나병 축제

주 = 주 (년 2,1);

Sum = day [leap (연도 2)] [0];

For(i=0, j = 0;; 나< 합계; I++)

{

만약 (! ((+i 주) %7))

A [j++] = I;

}

If(sumDay2==a[-j])

{

Cout & lt& lt 국제 나병 축제;

Flag = 0;;

}

//3 월 마지막 주 월요일은 초중고생 안전교육의 날이다.

Week = 주 (연도 2,3);

Sum = day [leap (연도 2)] [2];

For(i=0, j = 0;; 나< 합계; I++)

{

If((Week+i)%7==6)

A [j++] = I-5;

}

J-;

For(I = 0;; 나<2; I++)

A [j]+= day [leap (연도 2)] [I];

If(sumDay2==a[j])

{

Cout & lt& lt "초등 및 중등 학교 안전 교육의 날";

Flag = 0;;

}

//5 월 둘째 일요일은 어머니의 날

//5 월 셋째 일요일은 전국 잔해의 날이다

Week = 주 (연도 2,5);

Sum = day [leap (연도 2)] [4];

For(i=0, j = 0;; 나< 합계; I++)

{

만약 (! ((+i 주) %7))

A [j++] = I;

}

For(I = 0;; 나<4; I++)

{

A[ 1]+= day[ 윤년 (연도 2)] [I];

A [2]+= day [leap (연도 2)] [I];

}

If(sumDay2==a[ 1])

{

Cout & lt& lt 어머니의 날;

Flag = 0;;

}

If(sumDay2==a[2])

{

Cout & lt& lt "국가 잔해의 날";

Flag = 0;;

}

//6 월 셋째 일요일은 어버이날이다

Week = 주 (연도 2,6);

Sum = day [leap (연도 2)] [5];

For(i=0, j = 0;; 나< 합계; I++)

{

만약 (! ((+i 주) %7))

A [j++] = I;

}

For(I = 0;; 나<5; I++)

A [2]+= day [leap (연도 2)] [I];

If(sumDay2==a[2])

{

Cout & lt& lt 아버지의 날;

Flag = 0;;

}

//9 월 셋째 화요일은 국제평화의 날이다

Week = 주 (연도 2,9);

Sum = day [leap (연도 2)] [8];

For(i=0, j = 0;; 나< 합계; I++)

{

If((Week+i)%7==2)

A [j++] = I;

}

For(I = 0;; 나<8; I++)

A [2]+= day [leap (연도 2)] [I];

If(sumDay2==a[2])

{

Cout & lt& lt "국제 평화의 날";

Flag = 0;;

}

//9 월 셋째 토요일은 국방교육의 날이다

For(i=0, j = 0;; 나< 합계; I++)

{

If((Week+i)%7==6)

A [j++] = I;

}

For(I = 0;; 나<8; I++)

A [2]+= day [leap (연도 2)] [I];

If(sumDay2==a[2])

{

Cout & lt& lt "국방 교육의 날";

Flag = 0;;

}

//9 월 넷째 일요일은 국제 청각 장애인의 날이다

For(i=0, j = 0;; 나< 합계; I++)

{

만약 (! ((+i 주) %7))

A [j++] = I;

}

For(I = 0;; 나<8; I++)

A[3]+= day[ 윤년 (연도 2)] [I];

If(sumDay2==a[3])

{

Cout & lt& lt 국제 청각 장애인의 날;

Flag = 0;;

}

//65438+ 10 월 첫 월요일 세계 주택의 날.

주 = 주 (연도 2,10);

Sum = day [leap (연도 2)] [9];

For(i=0, j = 0;; 나< 합계; I++)

{

If((Week+i)%7== 1)

A [j++] = I;

}

For(I = 0;; 나<9; I++)

A [0]+= day [leap (연도 2)] [I];

If(sumDay2==a[0])

{

Cout & lt& lt 세계 주택의 날;

Flag = 0;;

}

//6 월 둘째 별 10- 캐나다 추수감사절

For(i=0, j = 0;; 나< 합계; I++)

{

If((Week+i)%7== 1)

A [j++] = I;

}

For(I = 0;; 나<9; I++)

A[ 1]+= day[ 윤년 (연도 2)] [I];

If(sumDay2==a[ 1])

{

Cout & lt& lt "캐나다 추수 감사절";

Flag = 0;;

}

//65438+ 10 월 둘째 수요일 국제감소자연재해의 날

For(i=0, j = 0;; 나< 합계; I++)

{

If((Week+i)%7==3)

A [j++] = I;

}

For(I = 0;; 나<9; I++)

A[ 1]+= day[ 윤년 (연도 2)] [I];

If(sumDay2==a[ 1])

{

Cout & lt& lt "국제 자연 재해의 날";

Flag = 0;;

}

//65438+ 10 월 둘째 목요일 세계 사랑의 날

For(i=0, j = 0;; 나< 합계; I++)

{

If((Week+i)%7==4)

A [j++] = I;

}

For(I = 0;; 나<9; I++)

A[ 1]+= day[ 윤년 (연도 2)] [I];

If(sumDay2==a[ 1])

{

Cout & lt& lt "세계 사랑의 날";

Flag = 0;;

}

// 165438+ 미국 추수감사절은 10 월 마지막 목요일에

Week = 주 (연도 2,11);

Sum = day [leap (연도 2)] [10];

For(i=0, j = 0;; 나< 합계; I++)

{

If((Week+i)%7==4)

A [j++] = I;

}

J-;

For(I = 0;; 나< 10; I++)

A [j]+= day [leap (연도 2)] [I];

If(sumDay2==a[j])

{

Cout & lt& lt "미국 추수감사절";

Flag = 0;;

}

If ((sum day 2 > 59)& amp;; & amp (윤년 (2 년차)))

Sum day 2-;

스위치 (sumDay2)

{

사례 0: cout < & lt "설날"

사례 32:cout & lt;; & lt "세계 습지의 날"

사례 44:cout & lt;; Lt "발렌타인 데이"

사례 61:cout < & lt "전국 사랑의 날"

사례 63:cout & lt;; & lt "청소년 자원 봉사의 날" endl 이 깨졌습니다.

사례 66:cout & lt;; & lt "국제 여성의 날"

사례 67:cout & lt;; & lt "어머니 강 보호의 날" 엔델이 깨졌습니다.

사례 70:cout & lt;; & lt "중국 식목일" < & ltendl 깨진;

사례 72:cout & lt;; & lt "화이트 데이 국제 경찰의 날"

사례 73:cout & lt;; & lt "세계 소비자 권리의 날"

사례 79:cout & lt;; LT "세계 숲의 날, 세계 수면의 날" 엔델이 깨졌습니다.

사례 80:cout & lt;; & lt "세계 물의 날" endl 이 깨졌습니다.

사례 81:cout < & lt "세계 기상의 날" endl 이 깨졌습니다.

사례 82:cout & lt;; & lt "세계 결핵의 날"

사례 90:cout & lt;; Lt' 만우절'

사례 94:cout & lt;; Lt' 청명절'

사례 96:cout & lt;; & lt "세계 보건의 날"

사례111:cout < & lt "지구의 날"

사례115: cout < & lt "세계 지적 재산권의 날" endl 이 깨졌습니다.

사례120: cout < & lt "국제 노동절"

사례122: cout < & lt "세계 천식 데이"

사례123: cout < & lt "중국 청년절"

사례127: cout < & lt "세계 적십자의 날"

사례131:cout < & lt "국제 간호사 축제" endl 깨진;

사례134: cout < & lt "국제 가정의 날"

사례136: cout < & lt "세계 통신의 날" < & ltendl 깨진;

사례139: cout < & lt "전국 학생 영양의 날"

사례142: cout < & lt "국제 우유의 날"

사례150: cout < & lt "세계 무연의 날" 엔델이 깨졌습니다.

사례151:cout < Lt "국제 어린이날"

사례155: cout < & lt "세계 환경의 날"

사례156: cout < & lt "전국 사랑의 날"

사례167: cout < & lt "세계 사막화 및 가뭄의 날"

사례173: cout < & lt "국제 올림픽의 날"

사례175: cout < & lt "국가 토지의 날" endl 이 깨졌습니다.

사례176: cout < & lt "국제 마약 금지의 날" endl 이 깨졌습니다.

사례181:cout < & lt "중국 * * * 생산당 탄생일 국제건축일"

사례187: cout < & lt "중국 인민 항일전쟁 기념일"

사례191:cout < & lt "세계 인구의 날"

사례 212: cout < LT' 중국 인민해방군건군절' << Endl 이 깨졌습니다.

사례 223:cout & lt;; & lt "국제 청소년의 날"

사례 250:cout & lt;; & lt "국제 문맹 퇴치의 날"

사례 252:cout & lt;; & lt "중국 스승의 날" < & ltendl 깨진;

사례 258:cout & lt;; & lt 중국 뇌 건강의 날, 국제 오존층 보호의 날

사례 262:cout & lt;; & lt "전국 치아의 날"

사례 263:cout & lt;; & lt "세계 휴전의 날"

사례 269:cout & lt;; & lt "세계 관광의 날"

사례 273:cout & lt;; Lt 중화 인민 공화국 국경일, 국제 음악의 날 및 국제 노인의 날

사례 276:cout & lt;; & lt "세계 동물의 날"

사례 277:cout & lt;; & lt "세계 스승의 날" < & ltendl 깨진;

사례 280:cout & lt;; & lt "전국 고혈압의 날" endl 이 깨졌습니다.

사례 281:cout < & lt "세계 우편의 날"

사례 282:cout & lt;; & lt "세계 정신 건강의 날"

사례 286:cout & lt;; & lt "세계 표준의 날"

사례 287:cout & lt;; & lt "국제 맹인의 날, 세계 농촌 여성의 날"

사례 288:cout & lt;; & lt "세계 식량의 날"

사례 289:cout & lt;; & lt "국제 빈곤 퇴치의 날"

사례 296:cout & lt;; 유엔의 날, 세계 개발 뉴스의 날

사례 300:cout & lt;; Lt "중국 남성 건강의 날" < & ltendl 이 깨졌습니다.

사례 301:cout < & lt "국제 생물 다양성의 날"

사례 303:cout & lt;; & lt "할로윈 데이"

사례 311:cout < & lt "중국 기자의 날" endl 이 깨졌습니다.

사례 312: cout < & lt "화재 선전의 날" endl 이 깨졌습니다.

사례 317: cout < & lt "세계 당뇨병의 날"

사례 320:cout & lt;; & lt "국제 대학 생일"

사례 328:cout & lt;; & lt "여성 폭력 근절의 날"

사례 334:cout & lt;; & lt "세계 에이즈의 날"

사례 336:cout & lt;; & lt "세계 장애인의 날"

사례 337:cout & lt;; & lt "국가 법률 선전의 날"

사례 342:cout & lt;; Lt "세계 축구의 날"

사례 358:cout & lt;; & lt "크리스마스"

사례 362:cout & lt;; & lt "국제 생물 다양성의 날"

기본값: if (flag) cout < & lt' 명절 없음' < & ltendlelse cout & lt& ltendl 휴식;

}

}

주 ()

{

달력 obj

Int I, flag =1;

While (로고)

{

시스템 ("cls");

Cout & lt& lt' 달력 표시 \ n 다음 숫자 "< & ltendl" 을 누르십시오

Cout & lt< "1,연도를 입력하고 화면에 표시된 연도 달력을 출력합니다." < & ltendl

Cout & lt& lt2, 입력 년 월, 출력 이번 달 달력

Cout & lt& lt"3. 연도, 월, 일을 입력하고 오늘부터 며칠 더 남았는지, 양력 휴일' < & ltendl' 인지 여부를 출력합니다

Cout & lt& lt4, 끝내기

Scanf("%d ",& ampi);

스위치 (1)

{

Case1:obj.showyear (); 시스템 ("일시 중지"); 깨뜨리다

사례 2: obj.showmonth (); 시스템 ("일시 중지"); 깨뜨리다

사례 3: obj.showday (); 시스템 ("일시 중지"); 깨뜨리다

시나리오 4: flag = 0; 깨뜨리다

기본값: cout & lt& lt "입력 오류, 다시 입력" < & ltendl 시스템 ("일시 중지"); 깨뜨리다

}

}

0 을 반환합니다

}