02. 조건문 #1

SOOBIN·2021년 2월 4일

C프로그래밍

목록 보기
2/4

1. if문



1. 문자 비교

  • 소문자 알파벳을 입력 받아서 'k' 보다 앞에 있는 알파벳인지 뒤에 있는 알파벳인지 출력하세요.

👉입력예시

소문자 알파벳을 입력하세요 : a

👉출력예시

a는 k보다 앞에 있습니다.

👉정답

#include<stdio.h>

int main() {
	char c = '\0'; //아무것도 없는 수 '\0'
	printf("소문자 알파벳을 입력하세요: ");
	scanf("%c", &c);
	
	if(c < 'k'){// 문자값을 넣기 위해선 ''안에 문자 넣어준다. 
		printf("%c는 k보다 앞에 있습니다.\n\n", c);
	} 
	if(c > 'k'){
		printf("%c는 k보다 뒤에 있습니다.\n\n", c);
	}
	if(c == 'k'){ 
		printf("%c와 k는 같습니다.\n\n", c);
	}
    return 0;
 }

2. 하샤드 수

  • 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다.
  • 예를 들어 18의 자릿수 합은 1 + 8 = 9이고, 18은 9로 나누어 떨어지므로 하샤드 수입니다.
  • 수를 입력받고 그 수가 하샤드 수인지 여부를 출력하세요.
  • 두 자리 수만 입력 가능합니다.

👉입력예시

수를 입력하세요: 18

👉출력예시

18은 하샤드 수 입니다.

👉정답

#include<stdio.h>

int main() {
	int num = 0;
    printf("수를 입력하세요: ");
    scanf("%d", &num);
    
    int q = num / 10;
    int r = num % 10;
    int sum = q + r;
    
    if (num > 9 && num < 100) {
    	if (num % sum == 0) {
    		printf("%d은 하샤드 수 입니다.", num);
  	   }
    	else {
    		printf("%d은 하샤드 수가 아닙니다.", num);
  	   }
    }
    else {
    	printf("두 자리 수만 입력 가능합니다.");
    }
 }


2. switch문


❗ 특징

  • switch: 조건이 '같다'일 때 if문을 대체해서 사용할 수 있다.
  • case에 해당했을 때 조건을 빠져나오기 위해서 break문을 사용한다. (사용하지 않으면 다음 case도 실행한다.)
  • 아무 case에도 해당되지 않으면 default

1. 계절 구하기

  • 월(month)를 입력 받아서 어떤 계절인지 출력하세요.
계절
3, 4, 5
6, 7, 8여름
9, 10, 11가을
12, 1, 2겨울

👉입력예시

월을 입력 하세요 : 12

👉출력예시

겨울

👉정답

#include<stdio.h>

int main() {
	int month = 0;
    printf("월을 입력 하세요: ");
    scanf("%d", &month);
    
    switch (month) {
    	case 3:
        case 4:
        case 5:
        	printf("봄");
            break; // break가 없으면 흘러내리는 switch문 성질 이용
        case 6:
        case 7:
        case 8:
        	printf("여룸");
            break;
        case 9:
        case 10:
        case 11:
        	printf("가을");
            break;
        case 12:
        case 1:
        case 2:
        	printf("겨울");
            break;
        default:
        	break;
        }
 }

0개의 댓글