오늘은 어제 정리한 조건문의 예제 두 개를 가져와봤다. :-)
[문제 1]
정수 한 개를 입력받고 절댓값을 출력해보자.
*HINT! if ~ else 구문 이용
[풀이]
입력받을 정수를 저장할 변수를 선언하고 조건식을 적어보자. 절댓값은 크기를 나타내는 값으로 예를 들어 3의 절댓값은 크기인 3이고 -7의 절댓값은 그 크기인 7이다. 즉 양수면 양수, 음수면 양수를 출력하는 프로그램인 것이다.
코드는 다음과 같다.
// 절대값 출력
#include <stdio.h>
int main(void) {
int n; // 입력받을 정수를 저장할 변수 선언, 사용자에게 입력받기 때문에 초기화를 해도 되고 안해도 된다.
printf("number? ");
scanf("%d", &n);
if (n >= 0) printf("absolute value: %d", n); // 입력받은 값이 양수일 경우는 그대로 출력
else printf("absolute value: %d", -n); // 입력받은 값이 음수일 경우(위 조건이 거짓일 경우)는 부호를 바꿔서 출력
return 0;
}
[문제 1-2]
정수 한 개를 입력 받고 절댓값을 출력해보자. 단, 조건 연산자를 이용하여 작성해보자.
*HINT! 조건 연산자
피연산자의 수가 세 개이기 때문에, 삼항 연산자라고도 불린다.
if ~ else문을 간결하게 표현하는 데 사용할 수 있다.
< 조건 연산자 문법 >
조건? A : B 형태로 이루어짐 => 조건이 참이면 A가 반환되고, 조건이 거짓이면 B가 반환된다.
[풀이]
입력받을 정수를 저장할 변수 n을 선언하고 조건식을 적어보자. 이때, 조건식으로는 삼항 연산자(조건 연산자)를 이용하여 작성할 것이다. 일단 절댓값이라는 기호를 씌운다는 것은 양수는 양수로 음수는 양수로 바꾸어져 나온다는 것이다. 즉, n>=0이 참이면 n, 거짓이면 -n을 반환하는 것이다.
코드는 다음과 같다.
// 절대값 출력_조건 연산자 ver.
#include <stdio.h>
int main(void) {
int n; // 입력받은 정수를 저장할 변수 선언
printf("number? ");
scanf("%d", &n); // 정수를 입력받는다.
printf("absolute value: %d", (n >= 0) ? n : -n); // 조건 연산자의 결과가 참이면 n, 거짓이면 -n을 반환
return 0;
}
[문제 2]
이번학기 점수를 입력받고 정해진 구간에 따라 학점을 부여하는 프로그램을 작성해보자.
학점 구간은 다음과 같다.
90점 이상이면 A학점
80점 이상 90점 미만이면 B학점
70점 이상 80점 미만이면 C학점
60점 이상 70점 미만이면 D학점
60점 미만이면 F학점
*HINT! if ~ else 구문 이용
[풀이]
입력받을 정수를 저장할 변수 score를 선언하고 조건식을 적어보자. 여러 조건이 나왔기 때문에 if ~ else if ~ else를 이용하여 적는다. 이때, 범위가 좁은 부분부터 쓰면 좋다. 예를 들면, if문으로 조건식 score>=90 다음에 else if문으로 조건식 score>=80를 적어주면 else if문으로 넘어왔을 때 의미가 score가 90 미만이고 80 이상인 것을 말한다.
코드는 다음과 같다.
// 학점 출력 프로그램
#include <stdio.h>
int main(void) {
int score; // 점수를 입력받을 변수 선언
printf("점수를 입력하세요: ");
scanf("%d", &score); // score에 입력받은 정수 저장
if (score >= 90) printf("A\n"); // 90이상일 때,
else if (score >= 80) printf("B\n"); // 90이상이 아니고(미만이고) 80 이상일 때,
else if (score >= 70) printf("C\n"); // 위 두 경우가 아니고 (80 미만이고) 70 이상일 때,
else if (score >= 60) printf("D\n"); // 위 세 경우가 아니고 (70 미만이고) 60 이상일 때,
else printf("F₩n"); // 앞에 모든 조건식을 만족하지 않았을(60미만) 때,
return 0;
}
'C언어_VisualStudio_실습' 카테고리의 다른 글
369게임 박수치기; while문, if문 (0) | 2021.06.11 |
---|---|
주문한 카페 메뉴 총 금액 출력하기; while문, switch문 (0) | 2021.06.10 |
[C언어] 사용자 정의 함수의 예제 : 큰 값 출력 함수, 구구단 출력 함수, 양수 입력 받는 함수, 아스키코드 출력 함수 (0) | 2021.05.27 |
[C 언어] 표준함수 사용해보기 : 수학함수, 랜덤함수, 외부 프로그램 실행 (0) | 2021.05.25 |
달력 프로그램 만들기 완전정복! (0) | 2021.05.23 |