본문 바로가기
프로그래밍/C | C++

[c언어]입력받은 수만큼 숫자가 증가하는 프로그램(이중for문)

by 청량리 물냉면 2020. 11. 9.
반응형
문제

사용자에게 숫자를 입력받아 그 숫자에 해당하는 줄만큼 수가 커지는 프로그램을 작성

 

 

실행화면

 

 

코드
#include <stdio.h>

int main(){

	int num;
	printf("숫자를 입력해 주세요: ");

	scanf_s("%d", &num);

	for (int i = 1; i <= num; i++) { //줄수 
		for (int j = 1; j <= i; j++) { //숫자
			printf("%d ", j);
		
		}

		printf("\n");
	}

}

 

 

코드 설명

 

i 줄 수, j 숫자를 출력한다.

for (int i = 1; i <= num; i++)

 

i는 사용자에게 입력받은 num의 수만큼 증가한다.

ex. 사용자가 4를 입력한 경우 i역시 4번 돌아간다.

즉, 사용자가 입력하는 num의 값이 줄 수가 되게 만들어주는 코드이다.

for (int j = 1; j <= i; j++) { //숫자
			printf("%d ", j);
		}

i안의 j는 i보다 작거나 같은 상황에서 후위증가한다. for문 안에서 증가하는 j의 값을 출력한다.

j가 i보다 커지면 for문을 빠져나온다.

따라서 이 for문에서는 i(줄 수)보다 작거나 같은 수를 출력한다.

printf("\n");

i의 for문에 해당하는 부분이다. j관련 for문에서 빠져나와 줄바꿈한다. 줄을 분리하는 역할을 하기 때문에 반드시 써주어야 한다. 쓰지 않으면

줄이 바뀌지 않는다.

 

 

더보기

추가기록(개인기록)

별 찍기와 굉장히 흡사한 로직이다.

 

반응형