switch 문 대신에 다른 것을 사용하는 방법
맺음새
질문 제목 : switch 문 대신에 다른 것을 사용하는 방법도대체 switch 문을 사용하지 않고 몇년 몇월입니다를 나타내는 방법은 무엇인가요..
if 문을 사용한다면 어떻게 하나요?질문 내용 :
#include stdio.h //printf() 의 이용을 위한 헤더 파일 포함
int main(void)
{
int year = 0, month = 0, maxday = 30, validinput = 0;
printf(년과 월을 다음과 같이 입력하면 그 달의 말일을 알려드립니다.\n);
printf(2003 2 : 입력 );
scanf(%d %d, &year, &month);
if (month == 1, 3, 5, 7, 8, 10, 12)
{maxday = 31; validinput = 1;}
else if (month == 4, 6, 9, 11)
{maxday = 30;
validinput = 1;}
else if (month == 2)
{if ((year%4 == 0) && (year%100 != 0) || (year%400 == 0))
maxday = 29;
else
maxday = 28;
validinput = 1;
}
else
validinput = 0;
if (validinput)
printf(%d년 %d월의 말일은 %d일 입니다.\n, year, month, maxday);
else
printf(입력이 잘못되었습니다.\n);
return 0;
}
이렇게 써봣는데 몇년은 제대로 나타나지만 그외 것들은 제대로 나타나지 않네요
밑에 switch 문을 사용했을 때입니다.
#include stdio.h //printf() 의 이용을 위한 헤더 파일 포함
int main(void)
{
int year = 0, month = 0, maxday = 30, validinput = 0;
printf(년과 월을 다음과 같이 입력하면 그 달의 말일을 알려드립니다.\n);
printf(2003 2 : 입력 );
scanf(%d %d, &year, &month);
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
maxday = 31;
validinput = 1;
break;
case 4:
case 6:
case 9:
case 11:
maxday = 30;
validinput = 1;
break;
case 2:
if ((year%4 == 0) && (year%100 != 0) || (year%400 == 0))
maxday = 29;
else
maxday = 28;
validinput = 1;
break;
default:
validinput = 0;
}
if (validinput)
printf(%d년 %d월의 말일은 %d일 입니다.\n, year, month, maxday);
else
printf(입력이 잘못되었습니다.\n);
return 0;
}
-
차미 2024-05-28
잘 돌아가는 데요? 2008에서 실행했습니다.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2690576 | bin파일 저장 | 다올 | 2025-04-06 |
2690547 | C언어 뒷부분이라 너무 어려워서요;; 프로그래밍 하나만 부탁드립니다 (4) | 그루터기 | 2025-04-05 |
2690517 | cygwin에서요.. (1) | 엘보어 | 2025-04-05 |
2690486 | 문자열과 문자형이요 ~ | 다스리 | 2025-04-05 |
2690344 | 일본어 주석 깨짐 문제 (3) | 연하얀 | 2025-04-04 |
2690314 | 암호문 만들기 -비제네르- | 이퓨리한나 | 2025-04-03 |
2690292 | 왕초보자의 질문!!!!!! 도와주세요 (1) | 하랑 | 2025-04-03 |
2690269 | 정올 문제 인데.. 흠 | 반월 | 2025-04-03 |
2690237 | sizeof에서 short형을 썻는데 왜 4byte가 나올까요? (1) | 바나나 | 2025-04-03 |
2690183 | 문자열과 포인트 비교 (2) | 미즈 | 2025-04-02 |
2690154 | a -48 ? | 희미한눈물 | 2025-04-02 |
2690094 | 테트리스 질문요. | 지후 | 2025-04-01 |
2690066 | 문자열비교!! (1) | 매디 | 2025-04-01 |
2689888 | 좀도와주세요;; ㅠㅠ | 사람 | 2025-03-30 |
2689856 | 메뉴 그리는 거 질문 | 나라빛 | 2025-03-30 |
2689831 | c언어 프로그램 추천 | 하연 | 2025-03-30 |
2689801 | c언어 time.h에서 작동이 중지되었습니다. | 하람 | 2025-03-30 |
2689772 | 2차원 배열의 배열명에 대해서.. | 옆집꼬마야 | 2025-03-29 |
2689740 | 게임 TCP소켓 질문 (2) | 불꾼 | 2025-03-29 |
2689711 | 반복문 모래시계 | 한뎃집 | 2025-03-29 |