✏️ 조건 / 분기
🔎 if / else
#include <stdio.h>
int main(void)
{
//버스를 탄다고 가정. 학생/일반인 구분(일반인 : 20세)
if (조건) { } else { }
int age = 25;
if (age >= 20)
printf("일반인 입니다.\n");
else
printf("학생입니다.\n");
return 0;
}
🔎 if / else if/ else
#include <stdio.h>
int main(void)
{
//초등학생 8~13/중학생 14~16/고등학생 17~19으로 나누면?
int age = 25;
if (age >= 8 && age <= 13)
{
printf("초등학생 입니다.\n");
}
else if (age >= 14 && age <= 16)
{
printf("중학생 입니다.\n");
}
else if(age >= 17 && age <= 19)
{
printf("고등학생 입니다.\n");
}
else
{
printf("학생이 아닌가봐요.\n");
}
return 0;
}
🔎 break
#include <stdio.h>
int main(void)
{
// 1번부터 30번까지 있는 반에서 1번부터 5번 학생까지 조별 발표를 합니다.
for (int i = 1; i <= 30; i++)
{
if (i >= 6) {
printf("나머지 학생은 집에 가세요\n");
break;
}
printf("%d번 학생은 조별 발표 준비를 하세요\n", i);
}
return 0;
}
🔎 continue
#include <stdio.h>
int main(void)
{
// 1번부터 30번까지 있는 반에서 7번 학생은 아파서 결석
// 7번을 제외하고 6번부터 10번까지 조별 발표를 하세요.
for (int i = 1; i <= 30; i++)
{
if (i >= 6 && i <= 10)
{
if (i == 7)
{
printf("%d번 학생은 결석입니다.\n", i);
continue;
}
printf("%d번 학생은 조별 발표 준비를 하세요\n", i);
}
}
printf("나머지 학생은 집에 가세요\n");
return 0;
}
✏️ 가위바위보
#include <stdio.h>
#include <time.h>
int main(void)
{
srand(time(NULL));
int i = rand() % 3; // 0 ~ 2 반환
switch (i)
{
case 0: printf("가위\n"); break;
case 1: printf("바위\n"); break;
case 2: printf("보\n"); break;
default: printf("몰라요\n"); break;
}
return 0;
}
✏️ 프로젝트
🔎 숫자 맞히기(up & down)
#include <stdio.h>
#include <time.h>
int main(void)
{
srand(time(NULL));
int num = rand() % 100 + 1; // 1~100사이의 숫자
printf("숫자 : % d\n", num);
int answer = 0; //정답
int chance = 5; //기회
while (chance > 0)
{
printf("남은 기회 : %d\n", chance--);
printf("숫자를 맞혀보세요 (1~100) : ");
scanf_s("%d", &answer);
if (answer > num)
{
printf("DOWN ↓ \n\n");
}
else if (answer < num)
{
printf("UP ↑\n\n");
}
else if (answer == num)
{
printf("정답입니다! \n\n");
break;
}
else
{
printf("알수없는 오류가 발생했어요.\n\n");
}
}
return 0;
}
🍏 KEEP, 습관 중요한 것
break와 continue 부분은 정보처리기사 프로그래밍언어 문제에서도 단골로 나온다.
원하는 동작을 구현할 수 있도록 break/continue을 잘 활용해 코드를 짜야할 것 같다.
🍎 PROBLEM, 이슈, 에러, 오류
rand 난수 발생시키기 위해서는 #include을 해줘야 한다.
그리고 함수 main이름이 같으면 다른 파일이어도 console결과값이 나오지 않는다.
이점을 유의해야 한다.
🍉 TRY 시도
기회를 주는 만큼 반복하도록 구현할때,
printf문에 바로 chance--을 쓴다는 점이 새롭게 느껴졌다.
코드를 한줄이라도 이렇게 줄일 수 있구나 싶다.
'c언어 개발일지' 카테고리의 다른 글
[나도 코딩 C언어] 배열 (0) | 2022.08.16 |
---|---|
[나도 코딩 C언어] 함수 (0) | 2022.08.12 |
[나도 코딩 C언어] 반복문 (0) | 2022.08.04 |
[나도 코딩 C언어] 변수, 상수, 입출력 (0) | 2022.08.01 |
[나도 코딩 C언어] hello World! (0) | 2022.08.01 |
댓글