일지
Day 16 반복문
joo_coding
2025. 3. 12. 11:45
p.221
6. C의 제어문: 루프
반복문 종류
1. for -------- 진입조건 루프
2. while ----- 진입조건 루프
3. do whilt -- 탈출조건 루프
for | ![]() |
while | ![]() |
do while | ![]() |
< 별찍기 >

#include <stdio.h>
#include <string.h>
int main()
{
char star = '*';
// 별찍기
// 1
for (int i = 0; i < 5; i++) //0.1.2.3.4
{
for (int j = 0; j <= i; j++)
{
printf("*");
}
printf("\n");
}
// 2
printf("\n");
for (int i=0; i<5; i++)
{
for (int j = 5; j > i ; j--)
{
printf("*");
}
printf("\n");
}
// 3
printf("\n");
for (int i=0; i<5; i++)
{
for (int j = 5; j > i ; j--)
{
printf(" ");
}
for (int k=0; k<=i; k++) // 0
{ // 1 0
printf("*"); // 2 1 0
}
printf("\n");
}
// 4
printf("\n");
for (int i=0; i<5; i++) //0 1 2 3 4 = 라인갯수
{
for (int j=0; j<i+1; j++) // 0 1 2 3 4
{
printf(" ");
}
for (int k=4; k>=i; k--) // 4 3 2 1 0
{ // 3 2 1 0
printf("*");
}
printf("\n");
}
return 0;
}
< 프로그래밍 연습 문제 >
p.280
// 문제1
char ch[26];
for (char ch = 'A'; ch < ('A' + 26); ch++)
{ // 왜 표현식을 이렇게 써야할까? p.263 변형중첩루프 확인
printf("%c", ch);
}
printf("\n");
// 문제2
for (int i = 1; i < 6; i++)
{
for (int j = 0; j < i; j++)
{
printf("*");
}
printf("\n");
}
// 문제6
int start, end; // 시작,마감
scanf("%d", &start);
scanf("%d", &end);
for (start; start<end+1; start++)
{
printf("%d %d %d\n",start, start*start, start*start*start);
}
printf("\n");
// 문제7 - 단어를 입력받은 뒤, 거꾸로 출력
char words[30];
printf("단어 하나를 입력하세요: ");
scanf("%s", words);
int w = strlen(words);
printf("%d\n", w);
// strlen써서 몇글자인지 알아내고, 마지막 인덱싱을 찾아
for ( words[w]; w >= 0; w--) // strlen %zd
{
printf("%c", words[w]);
}
printf("\n");
// 문제8
float one,two;
int status = 1;
while (status == 1) // 대입연산 기호 중요
{
printf("2개의 실수를 입력하세요: ");
status == scanf("%f %f",&one,&two);
printf("결과: %f\n", (one-two)/(one*two));
// 반복해야되니까 결과는 반복문 안쪽에
}
// 문제10
int min, max;
printf("하한과 상한을 입력하세요: ");
scanf("%d %d", &min, &max);
int total=0;
for(int i = min; i <= max; i++ )
{
total += (i*i);
}
printf("합계: %d", total);
return 0;
}
문제1
문제8-1
문제5