민트맛뚱이
kwangkwang우럭따
민트맛뚱이
전체 방문자
오늘
어제
  • 분류 전체보기 (16)
    • C (12)
    • C programming (2)
    • digital engineering (1)
    • machine learning (0)
    • Data communication (0)
    • signal processing (0)
    • computer architecture (RISC.. (0)
    • project (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
민트맛뚱이

kwangkwang우럭따

뚱이가 알려주는 소프트웨어

(C언어) 중간고사 전 과제들 - (2)
C

(C언어) 중간고사 전 과제들 - (2)

2022. 12. 17. 21:27

드걔쟤


# 피라미드 역순

//#20. (별 활용)

# (피라미드 역순)

#include <stdio.h>
int main()
{
 int i,j;

 for(i=0; i<5; i++) //문장띄우기
 {
  for(j=0; j<i+1; j++) //역순으로 피라미드를 쌓기 위해 설정함 
  {
   printf(" ");
  }
  for(j=0; j<5-i; j++) //별을 쌓는다
  {
   printf("*");
  }   
  for(j=0; j<5-i-1; j++) //홀수로 쌓기 위해 설정함
  {
   printf("*");
  }
  printf("\n");
 }
}

 

# 피라미드, 반피라미드

// 반 피라미드

#include <stdio.h>
int main(void)
{
 int a, i, j;
  printf("입력하세요:");
  scanf("%d",&a);

 for(i=0; i<a; i++) //피라미드 
 {
  for(j=0; j<i+1; j++)
  {
   printf("*");
  }
  printf("\n");
 }
}



// (피라미드)

#include<stdio.h>
int main(){
	int a, b, i, j;
	scanf("%d", &a);
	for(i=1; i<=a; i++){
		for(j=a; j>i; j--){
		printf(" ");
		}
		for(b=0; b<i; b++){
		printf("*");
		}
        for(b=0; b<i-1; b++){
		printf("*");
		}
		printf("\n");
	}
}

 

# E

// (E)

#include<stdio.h>
int main(){
 int i, j, k;
 for(i=1; i<=5; i++){
  if(i%2==1)
  for(j=1; j<4; j++)
   printf("*");
  
  if(i%2==0)
  for(j=1; j<4; j++)
   printf(" ");

  printf("*\n");
}
}

 

# N

// N

#include<stdio.h>
int main(){
   int i, j, k;
   
   for(i=0; i<5; i++){
      printf("*");
   
      for(j=0; j<i; j++){
         printf(" ");
      }
         printf("*");
      for(k=5-i; k>0; k--){
      printf(" ");
   }
      printf("*\n");
   }
}

 

# Z

//Z 찍기
#include <stdio.h>
int main()
{
	int i,j;      	
	for(i=0;i<7;i++) 	// 7개의 별을 먼저 찍어서 Z의 윗줄 출력
	{
		printf("*");
	}
	printf("\n"); 	// 윗줄을 출력했으므로 줄 바꿈
	for(i=0;i<5;i++) 	// 남은 6줄 중 5줄은 한 칸씩 왼쪽으로 이동하게 출력해야 함
	{
		for(j=5;j>i;j--) 	// 한번 반복시마다 띄워쓰기 한 칸씩 줄여 출력
		{
			printf(" ");
		}
		printf("*\n"); 	// *를 출력하고, 그 줄은 출력이 끝났으므로 줄 바꿈
	}
	for(i=0;i<7;i++) 	// 맨 아랫줄의 1줄도 출력해야 하므로, *를 출력해야 함
	{
		printf("*");
	}
	return 0; 	// 프로그램 종료
}

 

# ◇ 

// ◇ 찍기
#include <stdio.h>
int main()
{
	int i,j;
	
	printf("       *\n");	// 가장 처음 그려질 제일 위의 꼭짓점을 그려냄
	for(i=0;i<=6;i++)		// 다음 6줄을 윗부분 마름모 그리는데 사용
	{
		for(j=5;j>=i;j--)	// Z를 그릴 때랑 같은 원리
		{
			printf(" ");
		}
		printf("*");
		for(j=0;j<=2*i;j++)
		{
			printf(" ");
		}
		printf("*\n");	
	}
	for(i=0;i<=5;i++)	// 이번에는 마름모 아랫부분을 구현
	{
		for(j=0;j<=i;j++)	// 이번에는 Z 그릴 때랑 반대 원리
		{
			printf(" ");
		}
		printf("*");
		for(j=0;j<2*(6-i)-1;j++)
		{
			printf(" ");
		}
		printf("*\n");	
	}
	printf("       *\n");	// 마지막 *를 그려서 마름모 아랫부분의 꼭짓점 구현
	return 0;
}

네 이게 별찍기 끝,, 별찍기는 리뷰하기가 애매해서..

공통적으로 생각해야하는 핵심부분은 줄바꿈을 진행할 때, 어떤 식으로 별을 찍을 것인가! 이게 제일 핵심. 여러분들도 꼭 줄바꿈 이후에 별을 찍을 때를 고민해보면 좋을거 같네요

별찍기 끝...고백하자면 지금도 잘 못함 ㅋㅋㄹㅇㅋㅋ

'C' 카테고리의 다른 글

(C언어) 모의중간고사, 중간고사  (1) 2022.12.17
(C언어) 중간고사 전 과제들 - (3)  (2) 2022.12.17
(C언어) 중간고사 전 과제들 - (1)  (0) 2022.12.17
(C언어) 중간고사 전 과제들  (0) 2022.12.17
C언어 공부법  (0) 2022.12.17
    민트맛뚱이
    민트맛뚱이
    암 벅

    티스토리툴바