본문 바로가기
C 언어

c언어 실습 <a002> 이중 for 문을 이용한 다양한 모양 출력하기 (x모양)

by Smart Factory in 2020 2020. 10. 12.
728x90
반응형

안녕하세요. 스마트팩토리입니다. 

c언어 실습 <a002> 이중 for 문을 이용한 다양한 모양 출력하기이중 for 문을 이용한 다양한 모양 출력하기 (x모양)를 통해 실습해 보겠습니다. 

초기에는 실습할 것이 많은데 물론 알수록 더 많이 해야겠지만 말이지요. 

꾸준히 연습에 연습을 하면 점점 익숙해 지지 않을까 생각합니다. 

실습의 기준은 없고 이론을 나가면서 빠진 부분이 있으면 지속적으로 업로드 하도록 하겠습니다. 

l

이중  for 문을 활용할 것, "*" 을 이용할 것


#include<stdio.h>
void main() {

for (int i = 0; i <= 5; i++) {
   for (int j = 0; j <= i; j++) {
   printf("*");
   }
printf("\n");
}
}


 

* 표시나 숫자를 넣는 것은 동일합니다. 

내부 for 문에서 숫자가 출력할 수 있도록 해야 합니다. 


#include<stdio.h>
void main() {

for (int i = 1; i <= 5; i++) {   --> 0은 제외하고 1부터 시작했습니다. 
   for (int j = 1; j <= i; j++) {   
   printf("%d", j);   --> 숫자로 표기하기 위해서~서식을 변경
   }
printf("\n");
}
}


 

거꾸로 출력하는 방법

1번을 해결했다면 어렵지 않게 해결할 수 있습니다. 

이중for 문에서 내부 for문을 파악하는게 중요하다하겠습니다.  증감식에서 감소하는 것으로 하면 역순이 됩니다. 


#include<stdio.h>
void main() {

for (int i = 0; i <= 5; i++) {
  for (int j = 5; j >= i; j--) {
  printf("*");
  }
printf("\n");
}
}


주석처리한 부분은 삭제 했습니다.

 


#include<stdio.h>
void main() {

for (int i = 1; i <= 5; i++) {
  for (int j = 5; j >= i; j--) {
  printf("%d", j);
printf("\n");
}
}


 

순차로 나오도록 하기 위해서 숫자 조정을 했습니다. 

 


#include<stdio.h>
void main() {

for (int i = 1; i <= 5; i++) {
   for (int j = 5; j >= i; j--) {   
   printf("%d", (6-j));
}
printf("\n");
}
}


 

 

 


#include<stdio.h>
void main() {

for (int i = 0; i <= 5; i++) {
for (int j = 0; j <= i; j++) {
if (j == i) {
printf("*");
}
else printf(" ");
}
printf("\n");
}
}


곱하기 대신 숫자를 넣으면 숫자로 표기됩니다. 


#include<stdio.h>
void main() {

for (int i = 0; i <= 5; i++) {
  for (int j = 0; j <= i; j++) {
  if (j == i) {                   --> i 와j 가 같을때만 출력하게 하기 위해서 입니다. 
   printf("%d",i);
   }
   else printf(" ");
  }
printf("\n");
}
}


 


#include<stdio.h>
void main() {

for (int i = 0; i <= 5; i++) {
for (int j = 5; j >= i; j--) {
if (j == i) {
printf("*");
}
else printf(" ");
}
printf("\n");
}
}


 


#include<stdio.h>
void main() {

for (int i = 1; i <= 5; i++) {
  for (int j = 5; j >= i; j--) {
  if (j == i) {
   printf("%d",j);
   }
   else printf(" ");
   }
printf("\n");
}
}


 

x 모양을 출력하는 프로그램입니다. 

이중 for 문과 if문 else문 까지 사용하면 됩니다. 


#include<stdio.h>
void main() {

for (int i = 1; i <= 5; i++) {
  for (int j = 1; j <=5; j++) {

  if (i==j) {
  printf("*");
  }
  else if (i+j==6){ 
  printf("*"); }
  else printf(" ");
  }
printf("\n");
}
}

 


조금더 큰 엑스자를 만들려면 범위를 크게 하면 됩니다. 단 홀수로 말이지요.


#include<stdio.h>
void main() {

for (int i = 1; i <= 11; i++) {
  for (int j = 1; j <=11; j++) {

  if (i==j) {
  printf("*");
  }
  else if (i+j==12){ 
  printf("*"); }
  else printf(" ");
  }
printf("\n");
}
}

 


 짝수로 하면 중간에 겹치는 부분이 나옵니다. 

 

 

 

이중 for 문을 제대로 이해하고 있으면 충분히 c 언어의 초급은 마무리  되었다고 할 수 있습니다. 

 

 

 

 

728x90
반응형

댓글