#include <stdio.h>
int main() {
int a;
printf("입력값 : ");
scanf("%d", &a);
if (a % 10)
printf("이 수는 10의 배수가 아니다");
// if 문 - 만약 ~이라면 , 식을 평가하여 그 값이 0이 아니라면 구문을 실행한다.
return 0;
}
#include <stdio.h>
int main() {
int a,b;
printf("a값 입력 : ");
scanf("%d", &a);
printf("b값 입력 : ");
scanf("%d", &b);
if (a % b)
printf("B는 a의 약수가 아니다\n");
else
printf("B는 A의 약수이다\n");
return 0;
}
#include <stdio.h>
int main() {
int a;
printf("a값 입력 : ");
scanf("%d", &a);
if (a == 0)
printf("부호는 0 \n");
else if (a > 0)
printf("양수 \n");
else
printf("음수\n");
return 0;
}
#include <stdio.h>
int main() {
int a;
printf("a값 입력 : ");
scanf("%d", &a);
if (a < 0)
a = -a;
printf("%d", a);
return 0;
}
#include <stdio.h>
int main() {
int a,b;
printf("a값 입력 : ");
scanf("%d", &a);
printf("b값 입력 : ");
scanf("%d", &b);
if (a < b)
printf("a가 b보다 작습니다.\n");
else if (a == b)
printf("a와 b는 같습니다.\n");
else
printf("a는 b보다 큽니다.\n");
return 0;
}
#include <stdio.h>
int main() {
int a = 3;
int b = 7;
printf("a == b : %d \n", a == b); // 0
printf("a != b : %d \n", a != b); // 1
printf("a > b : %d \n", a > b); // 0
printf("a >= b : %d \n", a >= b); // 0
printf("a < b : %d \n", a < b); // 1
printf("a <= b : %d \n", a <= b); // 1
return 0;
}
int main() {
int a, b, c;
int min;
printf("a값 입력 : ");
scanf("%d", &a);
printf("b값 입력 : ");
scanf("%d", &b);
printf("c값 입력 : ");
scanf("%d", &c);
min = a;
if (b < min)
min = b;
if (c < min)
min = c;
printf("최솟값은 %d이다. \n", min);
return 0;
}
int main() {
int a, b, c, d;
int max;
printf("a값 입력 : ");
scanf("%d", &a);
printf("b값 입력 : ");
scanf("%d", &b);
printf("c값 입력 : ");
scanf("%d", &c);
printf("d값 입력 : ");
scanf("%d", &d);
max = a;
if (b > max)
max = b;
if (c > max)
max = c;
if (d > max)
max = d;
printf("최댓값은 %d이다. \n", max);
return 0;
}
#include <stdio.h>
int main() {
int a, b;
int sub;
printf("a값 입력 : ");
scanf("%d", &a);
printf("b값 입력 : ");
scanf("%d", &b);
sub = a - b;
if (sub < 0)
sub = -sub;
printf("차이는 %d이다. \n", sub);
return 0;
}
삼항연산자 (조건연산자)
=> ( 조건 ) ? ( 조건이 참일때 수행 ) : ( 조건이 거짓일 때 수행 )
#include <stdio.h>
int main() {
int a, b, c;
int sub;
printf("a값 입력 : ");
scanf("%d", &a);
printf("b값 입력 : ");
scanf("%d", &b);
printf("c값 입력 : ");
scanf("%d", &c);
printf(" 최솟값 : % d \n", (a<b)?((a<c)? a:c ) : ((b<c) ? b:c));
return 0;
}
논리 AND 연산자 : &&
논리 OR 연산자 : ||
#include <stdio.h>
int main() {
int a, b, c;
printf("a값 입력 : ");
scanf("%d", &a);
printf("b값 입력 : ");
scanf("%d", &b);
printf("c값 입력 : ");
scanf("%d", &c);
if (a == b && b == c) {
printf("3개 모두 같습니다.\b");
}
else if (a == b || b == c || c == a) {
printf("2개 값이 같습니다.\n");
}
else {
printf("모두 다릅니다\n");
}
return 0;
}
#include <stdio.h>
int main() {
int a, b;
int sub;
printf("a값 입력 : ");
scanf("%d", &a);
printf("b값 입력 : ");
scanf("%d", &b);
sub = a - b;
if (sub < 0) {
sub = -sub;
}
if (sub >= 11) {
printf("두 값의 차이는 11 이상입니다.\n");
}
else {
printf("두 값의 차이는 10 이하입니다.\n");
}
return 0;
}
#include <stdio.h>
int main() {
int a;
printf("점수 입력 : ");
scanf("%d", &a);
if (a >= 80) {
printf("우수\n");
}
else if (a >= 70) {
printf("양호\n");
}
else if (a >= 60) {
printf("가능\n");
}
else {
printf("불가\n");
}
return 0;
}
판정 횟수가 많은 코드는 효율적이지 못한 코드
ex. 위와 같이 코드를 짜는 대신 else if (point>=80 && point<= 100) 이런 식으로 짜면 효율적 X.
#include <stdio.h>
int main() {
int a,b;
printf("a : ");
scanf("%d", &a);
printf("b : ");
scanf("%d", &b);
if (a == b)
printf("두 값은 같습니다\n");
else {
if (a < b) {
printf("작은 값은 %d, 큰 값은 %d\n", a, b);
}
else {
printf("작은 값은 %d, 큰 값은 %d\n", b,a);
}
}
return 0;
}
switch case
: 어떤 단일 식의 값을 기준으로 프로그램 흐름을 여러 개로 분기하고 싶은 경우, switch 문을 이용하면 간결하게 표현할 수 있다.
: switch -> ( 식 ) -> 구문
이 때 switch문에서 빠져나가고 싶다면 break;를 사용하면 된다.
#include <stdio.h>
int main() {
int a;
printf("숫자 하나를 입력하시오.");
scanf("%d", &a);
switch (a % 2) {
case 0: printf("짝수 \n");
case 1: printf("홀수 \n");
}
return 0;
}
#include <stdio.h>
int main() {
int a;
printf("몇 월인지 입력하시오. ");
scanf("%d", &a);
if (a <= 2 || a==12) {
printf("겨울\n");
}
else if (a <= 5) {
printf("봄\n");
}
else if (a <= 8) {
printf("가을\n");
}
else if (a <= 11) {
printf("겨울\n");
}
return 0;
}