티스토리 뷰
반응형
C언어 for do while을 이용한 별을 출력하기
이번 시간에는 이전 강의에서 설명되었던 for, do-while, scanf를 사용하여 ★를 출력하는 프로그래밍을 해 보겠습니다.
우선 입력받을 부분을 구현합니다.
printf를 사용하여 입력문구를 넣고 scanf를 사용하여 정수를 입력 받습니다.
scanf의 경우 enter 값이 다음 scanf에 영향을 주게 되어 fflush를 사용하여 입력 버퍼를 지워 줍니다.
printf("출력할 ★ 수를 입력하세요(0 이면 종료) : ");
scanf("%d",&target);
fflush(stdin); //scanf 입력 버퍼 지우기
do while을 사용하여 계속 반복하게 되고 입력 받은 정수값이 0이면 종료되는 시나리오 입니다.
입력반은 정수의 수만큼 ★를 for 루프를 사용하여 반복 출력합니다.
printf(" ");
for(int i = 0; i<target; i++)
{
printf("★");
}
printf("\n");
여기 while에서 target이 0보다 큰 경우만 반복되게 됩니다.
즉 0이 입력 받으면 종료 됩니다.
do
{
.
.
.
}while(target > 0);
이제 전체 소스를 보고 분석해 보세요~~
#include <stdio.h>
#include <windows.h> //system 명령 실행을 위해
void main(void)
{
system("chcp 65001"); //gcc 한글 깨짐
system("cls"); //화면지움
int target;
do
{
printf("출력할 ★ 수를 입력하세요(0 이면 종료) : ");
scanf("%d",&target);
fflush(stdin); //scanf 입력 버퍼 지우기
printf(" ");
for(int i = 0; i<target; i++)
{
printf("★");
}
printf("\n");
}while(target > 0);
return;
}
실행하게 되면 아래와 같이 출력이 됩니다.
1부터 9까지 마지막에 0을 입력 받아 종료하게 됩니다.
--끝--
반응형
'C언어 강의' 카테고리의 다른 글
C언어 기초 문법을 이용한 정수 맞추기 게임 - 씨에프랩 (0) | 2020.04.19 |
---|---|
C언어 기초 # 10진수를 2진수로 변환하기 - 씨에프랩 (0) | 2020.04.19 |
C언어를 이용한 간단한 게임을 만들어 보자 (0) | 2020.04.17 |
개발자의 C언어 독학 기초 # scanf (0) | 2020.04.16 |
개발자의 C언어 독학 기초 # gets, puts (0) | 2020.04.16 |