내가볼려고 올리는 정리
int main()
{
printf("%d", 2 + 6); // 8
printf("%d", 6 - 2); // 4
printf("%d", 2 * 6); // 12
printf("%d", 6 / 2); // 3
printf("%d", 7 % 2); // 1
return 0;
}
#include <stdio.h>
int main()
{
int i = 0;
printf("%d", ++i); // 1
i = 0; // 0 으로 초기화
printf("%d", i++); // 0
printf("%d", i); // 1
return 0;
}
#include <stdio.h>
int main()
{
int number = 5;
printf("number 는 5와 같습니까? %d\n", number == 5); // 같으므로 1(참)
printf("number 는 4와 같습니까? %d\n", number == 4); // 같지 않으므로 0(거짓)
printf("number 는 5와 다릅니까? %d\n", number != 5); // 같으므로 0(거짓)
printf("number 는 4와 다릅니까? %d\n", number != 4); // 같지 않으므로 1(참)
printf("number 가 4보다 큽니까? %d\n", 4 < number); // 크므로 1(참)
printf("number 가 5보다 큽니까? %d\n", 5 < number); // 크지 않으므로 0(거짓)
printf("number 가 10보다 큽니까? %d\n", 10 < number); // 크지 않으므로 0(거짓)
printf("number 가 10보다 작습니까? %d\n", number < 10); // 작으므로 1(참)
printf("number 가 5보다 작습니까? %d\n", number < 5); // 작지 않으므로 0(거짓)
printf("number 가 4보다 작습니까? %d\n", number < 4); // 작지 않으므로 0(거짓)
printf("number 가 5보다 크거나 같습니까? %d\n", 5 <= number); // 크거나 같으므로 1(참)
printf("number 가 5보다 작거나 같습니까? %d\n", number <= 5); // 작거나 같으므로 1(참)
return 0;
}
#include <stdio.h>
int main()
{
int number = 5;
printf("AND(논리곱) : %d\n", 3 < number && number < 10);
// 둘 다 참이므로 참(1)을 출력
printf("AND(논리곱) : %d\n", 3 < number && 10 < number);
// 둘 중 하나만 참이므로 거짓(0)을 출력
printf("OR(논리합) : %d\n", number == 5 || number == 4);
// 둘 중 하나라도 참이므로 참(1)을 출력
printf("OR(논리합) : %d\n", number == 6 || number == 7);
// 둘 다 거짓이므로 거짓(0)을 출력
return 0;
}
#include <stdio.h>
int main()
{
int a = 5; // 5 로 초기화하여 시작
a += 5;
printf("%d\n", a); // 10 출력
a -= 3;
printf("%d\n", a); // 7 출력
a *= 5;
printf("%d\n", a); // 35 출력
a /= 7;
printf("%d\n", a); // 5 출력
a %= 4;
printf("%d\n", a); // 나머지 1 출력
return 0;
}
비트연산자 | 설명 |
---|---|
& | 대응되는 비트가 모두 1이면 1을 반환(AND) |
\ | 대응되는 비트중에서 하나라도 1이면 1(OR) |
^ | 대응되는 비트가 서로 다르면 1(XOR) |
~ | 비트가 1이면 0으로, 0이면 1로 (NOT) |
<< | 지정한 수 만큼 비트들을 모두 왼쪽으로 이동시킴.(LEFT SHIFT) |
>> | 부호를 유지하면서 지정한 수만큼 비트를 전부 오른쪽으로 이동(RIGHT SHIFT) |
#include <stdio.h>
int main()
{
unsigned char a = 5; // 0000 0101
unsigned char b = 10; // 0000 1010
unsigned char c;
c = a & b;
printf("%d\n", c);
//둘다 1인부분만 1이기때문에 결과값은 0이다.
c = a | b;
printf("%d\n", c);
// OR 연산을 수행하기 때문에 하나라도 1이면 1.
// 따라서 0000 1111 이기때문에 15가 결과값으로 나오게됨.
c = a ^ b;
printf("%d\n", c);
// 0000 1111
//15
c = ~a;
printf("%d\n", c);
//1111 1010
//250
c = a << 2;
printf("%d\n", c);
//0001 0100
//20
c = a >> 2;
printf("%d\n", c);
// 0000 0001
//1
return 0;
}
한 눈에 끝내는 c언어 기초 를 공부하고 작성한 글입니다.
좋아요