c언어 주말이면 주말이다!!라는 말을 출력하고 싶은데 뭐가 문제인지 모르겠어요..

글쓴이: 익명 사용자 / 작성시간: 토, 2019/11/02 - 11:30오후
#include<stdio.h> int Checkweekend(int x, int y){ int i, day = 0; int monthArr[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; for (i = 1; i <= (x - 1); i++) day += monthArr[i]; day += y; day = day % 7; if(day==0&&day==6){ return 1;//주말 } else{ return 0;//주중 } } int main(void){ int x, y; scanf("%d %d",&x, &y); if(Checkweekend(x, y)){ printf("주말"); } return 0; }
제가 굳이 함수를 만들어서 사용하는 이유는 이함수를 다른 긴 코드에 첨부하고 싶어서 입니다.. 뭐가 문제일까요..?
Forums:
&&->||
&&->||
대충 보이는 문제 몇가지
대충 보이는 문제 몇가지
1.
int Checkweekend(int x, int y)
는.. -_-;;정 한 글자로 파라미터 이름을 짓고 싶으시면
int m, int d
로 하는 게 낫죠. 이거는 읽는 사람 엿 먹이는 것 밖에는 안됩니다.그 읽는 사람이 몇개월 뒤의 본인일 수도 있죠.
2. monthArr[0]이 의미 있는 값을 가지고 있는데도 불구하고 접근되지 않는다는 점.
이건 프로그래머가 0-based index와 1-based index를 혼용하고 있다는 점을 가리킵니다.
3. 2월이 항상 28일인 건 아닐 텐데요?
4.
day==0&&day==6
은 어떤 경우에 참이 될까요?댓글 달기