728x90
  • 2개 이상의 조건을 동시에 만족하는지를 알고 싶은 경우라면, 다음과 같이 && (and)를 사용하면 됩니다.
#include <stdio.h>

int main() {
    int a, b, c;

    scanf("%d %d %d",&a,&b,&c);

    if(a<=b && a<=c){
        printf("1 ");
    }
    else{
        printf("0 ");
    }
    
    if(a==b && b==c && c==a){
        printf("1");
    }
    else{
        printf("0");
    }
    return 0;
}
if (조건1 && 조건2) {

    코드1

}
#include <stdio.h>

int main() {

	int a;
	scanf("%d", &a);
	if (a % 2 == 0 && a >= 10) {
		printf("special");
	}
	else {
		printf("normal");
	}

	return 0;

}
  • 3개의 조건을 모두 만족시키는지에 대한 여부 역시 and를 2번 사용하여 표현할 수 있습니다. 조건이 더 많아도 됩니다.
if (조건1 && 조건2 && 조건3) {

    코드1

}

▶문제: A와 B의 수학과 영어의 점수를 입력받아 누가 더 높은지 비교하는 프로그램을 작성해주세요.

#include <stdio.h>

int main() {
    int a_m,a_e,b_m,b_e;
    
    scanf("%d %d",&a_m,&a_e);
    scanf("%d %d",&b_m,&b_e);

    if(a_m>b_m && a_e>b_e){
        printf("1");
    }
    else{
        printf("0");
    }

    return 0;
}

  • 2개 이상의 조건을 동시에 만족하는지를 알고 싶은 경우이므로 && (and)를 사용해 볼 수 있습니다.
  • ! C에서는 조건 2개를 && , || 등을 사용하지 않고 동시에 표현할 수 없음에 주의하여 주세요.
if (2 <= a && a <= 10) {

   코드1

}
#include <stdio.h>

int main() {

	int a;
	scanf("%d", &a);

	if (2 <= a && a <= 10) {
		printf("in range");
	}
	else {
		printf("out of range");
	}

	return 0;

}

▶문제: 정수 a를 입력받아 a가 10 이상 20 이하인 수인지를 판단하는 프로그램을 작성해 보세요.

#include <stdio.h>

int main() {
    int a;
    
    scanf("%d",&a);
    if(a>=10 && a<=20){
        printf("yes");
    }
    else{
        printf("no");
    }
    return 0;
}

▶문제: 양쪽눈의 시력을 실수(real number)로 입력받아 모두 1.0 이상이면 High, 모두 0.5 이상이면 Middle, 아니면 Low라고 출력하는 프로그램을 작성해 주세요.

#include <stdio.h>

int main() {
    double l, r;

    scanf("%lf %lf",&l,&r);
    if(l>=1.0 && r>=1.0){
        printf("High");
    }
    else if(l>=0.5 && r>=0.5){
        printf("Middle");
    }
    else{
        printf("Low");
    }
    return 0;
}

▶문제: 3개의 정수를 입력받아 첫 번째 수가 세 정수의 최솟값과 일치한다면 1 아니면 0을 출력하고, 세 개의 수가 모두 같으면 1 아니면 0을 출력하는 프로그램을 작성해 주세요.

#include <stdio.h>

int main() {
    int a, b, c;

    scanf("%d %d %d",&a,&b,&c);

    if(a<=b && a<=c){
        printf("1 ");
    }
    else{
        printf("0 ");
    }
    
    if(a==b && b==c && c==a){
        printf("1");
    }
    else{
        printf("0");
    }
    return 0;
}

▶문제: 3개의 정수를 입력받아 조건연산자를 이용하여 입력받은 수 중 최솟값을 출력하는 프로그램을 작성해 주세요.

#include <stdio.h>

int main() {
    int a,b,c;

    scanf("%d %d %d",&a,&b,&c);
    
    if(a<=b && a<=c){
        printf("%d",a);
    }
    else if(b<=a && b<=c){
        printf("%d",b);
    }
    else if(c<=a && c<=b){
        printf("%d",c);
    }
    return 0;
}

▶문제: 세 수 a, b, c의 값이 주어졌을 때, b가 a보다 크고 c보다 작다면 1을, 그렇지 않다면 0을 출력하는 프로그램을 작성해 보세요.

#include <stdio.h>

int main() {
    int a,b,c;

    scanf("%d %d %d",&a,&b,&c);
    
    if(a<b && b<c){
        printf("1");
    }
    else{
        printf("0");
    }
    return 0;
}

 

+ Recent posts