728x90
반응형
반복문의 종류
1. for반복문(배열) : 정해진 횟수만큼 반복하는 구조
2. while반복문
3. do-while반복문
4. break와 continue문
for문
*for문 시작전 값을 초기화 시켜줌, 쓰레기 값이 남아있기 때문
*더하기는 초기화 0으로, 곱하기는 초기화 1로
1. for(+배열)
for(초기식; 조건식; 증감식)
{
반복하고자 하는 문장들
}
for문안에서 값을 누적하고 싶으면
for문위에 변수 하나 0으로 초기화해줌
ex)
for (i = 1; i <= 5; i++) // == (i = 0; i < 5; i++) == (i = 1; i < 6; i++)
{
printf("Hello!\n");
}
2. 중첩 for문
for(초기식; 조건식; 증감식)
{
for(초기식; 조건식; 증감식)
{
. . .
}
}
//i가 0일때 내부 for문 돌아감, 1이 되면 돌아간다
//문제1. 단수를 입력하면 해당하는 단의 구구단을 출력하는 프로그램을 작성합니다.
#include <stdio.h>
int main(void)
{
int dan;
printf("단수를 입력하시오 : ");
scanf("%d", &dan);
for (int i = 1; i <= 9; i++)
printf("%d * %d = %d\n", dan, i, dan * i);
return 0;
}
//5명의 성적을 입력 받아 총합과 평균을 구하는 프로그램을 작성합니다.
#include <stdio.h>
int main(void)
{
int score, sum = 0;
double avg;
for (int i = 1; i <= 5; i++)
{
printf("%d번째 성적을 입력하시오", i);
scanf("%d", &score);
sum += score;
}
printf("---------------------------------------------\n");
avg = (double)sum / 5;
printf("다섯명의 성적의 합은 %d입니다.\n", sum);
printf("다섯명의 성적의 평균은 %f입니다.", avg);
return 0;
}
//1단부터 9단까지 구구단 중첩for문 출력 프로그램
#include <stdio.h>
int main(void)
{
for (int x = 2; x <= 9; x++)
{
for (int y = 1; y <= 9; y++)
{
printf("%d * %d = %d\n", x, y, x * y);
}
printf("\n");
}
return 0;
}
//1부터 10까지의 합을 출력
#include <stdio.h>
int main(void)
{
int sum = 0;
for (int i = 1; i <= 10; i++)
{
sum += i;
}
printf("%d", sum);
return 0;
}
//팩토리얼 식 짜기
#include <stdio.h>
int main(void)
{
int fact = 1, x;
printf("정수를 입력하세요");
scanf("%d", &x);
for (int i = 1; i <=x; i++)
fact *= i;
printf("%d!은 %d입니다.",x,fact );
return 0;
}
//별 사각형 만들기
#include <stdio.h>
int main(void)
{
int i;
printf("**********\n");
for (int i = 0; i < 5; i++)
printf("* *\n");
printf("**********\n");
return 0;
}
//입력한 정수만큼 i의 세제곱을 계산
#include <stdio.h>
int main(void)
{
int x;
printf("정수를 입력하시오 : ");
scanf("%d", &x);
printf("======================\n");
printf(" i i의 세제곱\n");
printf("======================\n");
for (int i = 1; i <= x; i++)
printf("%d %d\n", i, i*i*i);
return 0;
}
//1부터 100까지 숫자 5의 배수만 출력하는 프로그램
#include <stdio.h>
int main(void)
{
for (int i = 1; i <= 100; i++)
{
if (i % 5 == 0)
printf("%d ", i);
}
return 0;
}
//1-100까지의 숫자 중 짝수의 합을 출력하는 프로그램 작성
#include <stdio.h>
int main(void)
{
int sum = 0;
for (int i = 0; i <= 100; i++)
{
if (i%2==0)
sum +=i;
}
printf("1부터 100까지의 숫자중 짝수의 합은 : %d\n",sum);
return 0;
}
==========================================================
중첩 반복문 : 반복문 안에 다른 반복문이 위치
//별 피라미드 출력하기
#include <stdio.h>
int main(void)
{
for (int x= 1; x< 6; x++)
{
for(int y=0;y<x;y++)
printf("*");
printf("\n");
}
return 0;
}
#include <stdio.h>
int main(void)
{
for (int x = 0; x < 6; x++)
{
for (int y = 6; y > x; y--)
printf("*");
printf("\n");
}
return 0;
}
//두 개의 정수를 입력받아 n1부터 n2까지 더하여 출력
#include <stdio.h>
int main(void)
{
int num1, num2;
printf("두 개의 정수를 입력하라");
scanf("%d %d", &num1, &num2);
int sum = 0;
if (num1 < num2)
{
for (int i = num1; i <= num2; i++)
sum += i;
printf("%d와 %d사이의 값의 합은 %d입니다.", num1, num2, sum);
}
else
printf("잘못 입력하였습니다.");
return 0;
}
728x90
반응형