코드업 C언어 기초 100제에서 [기초-논리연산] 풀기
#include <stdio.h>
int main() {
int i;
scanf("%d", &i);
if (i) {
printf("%d", !i);
} else if (!i) {
printf("%d", !i);
}
return 0;
}
(단, 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력되며, 그 외의 경우에는 0을 출력한다.)
#include <stdio.h>
int main() {
int i, j;
scanf("%d %d", &i, &j);
printf("%d", i&&j);
return 0;
}
출력 조건에 그 외의 경우에는 0을 출력해야 한다는 출력 조건이 있음.
(단, 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력되며, 하나라도 참일 경우 1을 출력하고, 그 외의 경우에는 0을 출력한다.)
#include <stdio.h>
int main() {
int i, j;
scanf("%d %d", &i, &j);
printf("%d", i||j);
return 0;
}
(단, 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력되며, 참/거짓이 서로 다를 때에만 1을 출력하고, 그 외의 경우에는 0을 출력한다.)
#include <stdio.h>
int main() {
int i, j;
scanf("%d %d", &i, &j);
printf("%d", i^j);
return 0;
}
(단, 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력되며, 참/거짓이 서로 같을 때에만 1을 출력하고, 그 외의 경우에는 0을 출력한다.)
#include <stdio.h>
int main() {
int i, j;
scanf("%d %d", &i, &j);
printf("%d", !(i^j));
return 0;
}
(단, 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력되며, 둘 다 거짓일 경우에만 1을 출력하고, 그 외의 경우에는 0을 출력한다.)
#include <stdio.h>
int main() {
int i, j;
scanf("%d %d", &i, &j);
printf("%d", !(i||j));
return 0;
}
1) 앞으로는 입력 조건과 출력 조건도 살펴봐야겠다.