C언어_03 관계, 논리, 비교, 비트 연산

2024. 9. 5. 18:00폴리텍_하이테크_AI소프트웨어/C언어

1. 관계연산자 ==, !=

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

// 관계연산자 ==, !=

int main(){
	
	int a, b;
	scanf("%d%d", &a, &b);
	printf("%d=%d == %d",a,b,a == b);

	return 0;
}

2. 관계연산자 크기 비교

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>


// 관계연산자 크기 비교

int main() {
	int a, b;
	printf("첫 번째 정수를 입력하세요\n");
	scanf("%d", &a);
	printf("두 번째 정수를 입력하세요\n");
	scanf("%d", &b);
	printf("%d>%d는 %d입니다.", a, b, a > b);

}

 

3. 논리연산자 &&

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

// 논리연산자 &&

int main() {
	int a;
	printf("10보다 크고 20보다 작은 정수를 입력하세요\n");
	scanf("%d", &a);

	printf("결과는 %d입니다.", 10 < a && 20 > a);

	return 0;
}

4. 논리연산자 ||

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

// 논리연산자 ||

int main() {
	int a;
	printf("10보다 작거나 20보다 큰 정수를 입력하세요\n");
	scanf("%d", &a);

	printf("결과는 %d입니다.", 10 > a || 20 <a);

	return 0;
}

5. not

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
// not

int main() {
	int a = 3;
	int b = 5;

	printf("!(a>b)는 %d입니다.", !(a > b));

}

6. 조건연산자 1

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
// 조건연산자 1

int main() {
	int a, b;

	printf("a를 입력하세요: ");
	scanf("%d", &a);
	printf("a의 값이 10보다 크면 b는 2가 됩니다\n");
	printf("a의 값이 10보다 작으면 b는 1가 됩니다\n");

	b = a > 10 ? 2 : 1;
	printf("b = %d", b);
	return 0;
}

7. 조건연산자 2

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

// 조건연산자 2

int main() {
	printf("두 개의 서로 다른 정수를 입력하세요\n");
	int a, b;
	printf("a =");
	scanf("%d", &a);
	printf("b =");
	scanf("%d", &b);

	printf("입력된 두 수 중 큰 값은 %d입니다", a < b ? b : a);
}

8. 비트연산 or, and, xor

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

// 비트연산자 xor은 서로 다를때만 1

int main() {
	int a = 178;
	int b = 104;

	printf("and -> %d ^ %d = %d\n", a, b, a & b);
	printf("OR -> %d | %d = %d\n", a, b, a | b);
	printf("XOR -> %d ^ %d = %d\n", a, b, a ^ b);

}

9. 비트연산 <<, >>

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
// 비트연산 <<,>>

int main() {
	int x = 4;
	int n = 2;

	printf("%d << %d = %d\n", x, n, x << n);
	printf("%d >> %d = %d", x, n, x >> n);

}

 


10. 방 8개를 관리하는 프로그램

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
// 방 8개를 관리하는 프로그램

int main() {
	char room= 0;
	
	//room = (1 << 6) | room;
	//room = (1 << 1) | room;

	room = room | 66;

	/*printf("2번 방과 7번 방의 불\n");
	printf("1번 방의 불이 켜져있는 것은 %d입니다.\n", (room >> 7) & 1);
	printf("2번 방의 불이 켜져있는 것은 %d입니다.\n", (room >> 6) & 1);
	printf("3번 방의 불이 켜져있는 것은 %d입니다.\n", (room >> 5) & 1);
	printf("4번 방의 불이 켜져있는 것은 %d입니다.\n", (room >> 4) & 1);
	printf("5번 방의 불이 켜져있는 것은 %d입니다.\n", (room >> 3) & 1);
	printf("6번 방의 불이 켜져있는 것은 %d입니다.\n", (room >> 2) & 1);
	printf("7번 방의 불이 켜져있는 것은 %d입니다.\n", (room >> 1) & 1);
	printf("8번 방의 불이 켜져있는 것은 %d입니다.\n", (room >> 0) & 1);*/

	printf("2번 방과 7번 방의 불\n");
	printf("1번 방의 불이 켜져있는 것은 %d입니다.\n", (room & 1) ? 1 : 0);
	printf("2번 방의 불이 켜져있는 것은 %d입니다.\n", (room & 2) ? 1 : 0);
	printf("3번 방의 불이 켜져있는 것은 %d입니다.\n", (room & 4) ? 1 : 0);
	printf("4번 방의 불이 켜져있는 것은 %d입니다.\n", (room & 8) ? 1 : 0);
	printf("5번 방의 불이 켜져있는 것은 %d입니다.\n", (room & 16) ? 1 : 0);
	printf("6번 방의 불이 켜져있는 것은 %d입니다.\n", (room & 32) ? 1 : 0);
	printf("7번 방의 불이 켜져있는 것은 %d입니다.\n", (room & 64) ? 1 : 0);
	printf("8번 방의 불이 켜져있는 것은 %d입니다.\n", (room & 128) ? 1 : 0);
	return 0;
}


11. 연산자 실습 1

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
// 연산자 실습 1

int main() {
	float a = 4;
	float b = 1.2;

	printf("%.1f + %.1f = %.1f\n", a, b, a + b);
	printf("%.1f - %.1f = %.1f\n", a, b, a - b);
	printf("%.1f * %.1f = %.1f\n", a, b, a * b);
	printf("%.1f / %.1f = %.1f\n", a, b, a / b);

	return 0;
}

12. 연산자 실습 2

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

// 연산자 실습 2
int main() {
	int a, b, c;
	printf("국어 점수: ");
	scanf("%d", &a);
	printf("영어 점수: ");
	scanf("%d", &b);
	printf("수학 점수: ");
	scanf("%d", &c);
	
	printf("평균: %.2f", (a + b + c) / 3.00);

	return 0;
}


13. 연산자 실습 3

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
// 연산자 실습 3

int main() {
	int a;
	printf("정수를 입력하세요: ");
	scanf("%d", &a);
	printf("결과: %d", a % 2 == 0 ? 1 : 0);
}

14. 연산자 실습 4

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

// 연산자 실습 4

int main() {
	float b, a = 100.0;
	printf("전체 좌석은 %.f석입니다.\n입장객 수를 입력하세요: ", a);
	scanf("%f", &b);
	printf("입장률: %.1f%%", b / 100 * 100);  

}


15. 연산자 실습 5

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
// 연산자 실습 5
int main() {
	float a = 3.76;
	int hour = a;
	int min = (a - hour) * 60;
	int sec = (((a - hour) * 60)-min)*60;

	printf("%.2f시간은 %d시간 %d분 %d초입니다.", a, hour, min, sec);

	return 0;
}

 

'폴리텍_하이테크_AI소프트웨어 > C언어' 카테고리의 다른 글

C언어_배열, 포인터  (0) 2024.09.26
C언어_for, while, do while  (0) 2024.09.19
C언어_04 if, switch  (0) 2024.09.12
C언어_02 연산자, 함수, 변수  (0) 2024.08.29
C언어_01  (0) 2024.08.22