반복문 활용
논리 연산자(&&
, ||
, !
)
-
&&
,||
로 비교한 A B 의 결과- 참 : 1
- 거짓 : 0
A B &&
(AND)ㅣㅣ
(OR)0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 1 -
!(NOT) 연산자를 사용한 X 의 결과
X ! (NOT) 0 1 1 0 -
C 언어 출력 결과
int main(void){
int a = 1, b = 0;
printf("a && b : %d\n", a && b);
printf("a || b : %d\n", a || b);
printf("!a : %d\n", !a);
printf("!b : %d\n", !b);
return 0;
}실행 결과
a && b : 0
a || b : 1
!a : 0
!b : 1 -
활용 예제
#include <stdio.h>
int main(void){
int a = 3;
int b = 5;
printf("%d\n", (a == 5) && (b == 5));
printf("%d\n", (a == 5) || (b == 5));
printf("%d\n", !((a == 5) || (b == 5)));
return 0;
}실행 결과
0
1
0 -
활용 예제 2
#include <stdio.h>
int main(void){
int a = 3;
int b = 5;
while(!((a == 10) || (b == 10))){
printf("a = %d\tb = %d\n", a, b);
++a;
++b;
}
return 0;
}실행 결과
a = 3 b = 5
a = 4 b = 6
a = 5 b = 7
a = 6 b = 8
a = 7 b = 9
for(i = 0; i < 3; i++) { ... }
for(초기값; 조건식; 증가치)
-
초기값으로 조건식을 조사해서 조건식이 참이면 명령 수행하고 증가시킴
-
조건이 거짓이 되면 for 반복문을 중단
EX)for(i=0; i<3; i++)
👉 3번 반복함 -
푸시업 예제
#include <stdio.h>
int main(void){
int i;
// 1부터 시작; 3과 같을 때까지; 1씩 증가;
for(i = 1; i <= 3; i++){
printf("%d회 푸시 다운\n", i);
printf("%d회 푸시 업\n", i);
}
return 0;
}실행 결과
1회 푸시 다운
1회 푸시 업
2회 푸시 다운
2회 푸시 업
3회 푸시 다운
3회 푸시 업⚠️
{중괄호}
가 없는 경우 첫번째 함수만 반복되므로 주의
메뉴 선택하기
-
switch case 문 활용
#include <stdio.h>
int main(void){
int number = 0;
printf("메뉴를 선택하세요.\n");
printf("1.콜라 2.사이다 3.환타.\n");
scanf("%d", &number);
switch(number){
case 1:
printf("콜라 입니다.\n");
break;
case 2:
printf("사이다 입니다.\n");
break;
case 3:
printf("환타 입니다.\n");
break;
default:
printf("생수 입니다.\n");
}
return 0;
}실행 결과
_따블클릭
3으로 나눈 나머지 맞추기
#include <stdio.h>
int main(void){
int man_robot = 0;
int woman_robot = 0;
int you = 0;
int m_ball = 3; w_ball = 3; y_ball = 3;
int man_robot_count = 0;
while(!(m_ball == 0 || w_ball == 0 || y_ball == 0)){
srand((unsigned int)time(0));
man_robot = rand() % 20 + 1; // 1 ~ 20 의 랜덤 수
man_robot_count = man_robot % 3; // 0 1 2
woman_robot = rand() % 3;
printf("여자봇은 %d를 선택했습니다.\n", woman_robot):
printf("당신은 무엇을 선택하시겠습니까?\n\n"):
printf("0. 나머지가 0이다. 1. 나머지가 1이다. 2. 나머지가 2이다.\n\n"):
scanf("%d", &you);
if(m_robot_count == you){
printf("당신이 이겼습니다.\n\n");
y_ball++;
m_ball--;
}
} else if(m_robot_count == you){
printf("여자 봇이 이겼습니다.\n\n");
w_ball++;
m_ball--;
} else {
printf("남자 봇이 이겼습니다.\n\n");
y_ball--
w_ball--
m_ball += 2;
}
printf("남자봇 : %d, 여자봇 : %d, 나 : %d", man_robot, woman_robot, you);
printf("남자봇 : %d 3으로 나눈 나머지는 %d입니다. \n\n", man_robot, m_robot_count);
printf("남자봇 : %d, 여자봇 : %d, 나 : %d", m_ball, w_ball, w_ball);
return 0;
}
실행 결과
_따블클릭