1. 程式人生 > >列印菱形圖案——對稱和不對稱

列印菱形圖案——對稱和不對稱

      *                                          
     *** 
    *****
   *******
  *********
 ***********
*************
 ***********
  *********
   *******
    *****
     ***


      *

#include <stdio.h>
#include<Windows.h>
int main()
{
 int i = 0, j = 0, t = 0;
 for (i = 1; i <= 7; i++) /*列印七行*/
 {
  for (j = 1; j <= 7 - i; j++)
  {
   printf(" ");  //列印空格
  }
  for (t = 1; t <= 2 * i - 1; t++)
  {
   printf("*");//列印星號
  }
       printf("\n");
 
 }
 for (i = 8; i <= 13; i++)
 {
  for (j = 1; j<=i - 7; j++)
  {
   printf(" ");//列印空格
  }
  for (t = 1; t <= (14 - i) * 2 - 1; t++)
  {
   printf("*");//列印星號
  }
  printf("\n");
 }
 system("pause");
 return 0;
}


*
***
*****
*******
*********
***********
*************
***********
*********
*******
*****
***
*

#include<stdio.h>
#include<windows.h>
int main()
{
 int i = 0,j=0;
 for (i = 1; i <= 7; i++)                                            
 {
  for (j = 1; j <= 2 * i - 1; j++)
  {
   printf("*");
  }
  printf("\n");
 }
 for (i = 8; i <= 13; i++)
 {
  for (j =1; j <=(14-i)*2-1; j++)
  {
   printf("*");
  }
  printf("\n");
 }
 system("pause");
  return 0;
}

先思考圖形的規律,上下對稱,再寫程式碼

優化:自定義行數程式碼

#include <stdio.h>
#include<Windows.h>
int main()
{
 int i = 0, j = 0, t = 0; int line = 10;
 for (i = 1; i <= line; i++)/*列印行*/
 {
  for (j = 1; j <= line - i; j++)
  {
   printf(" ");//列印空格
  }
  for (t = 1; t <= 2 * i - 1; t++)
  {
   printf("*");//列印星號
  }
       printf("\n");
 
 }
 for (i = 1; i <= line-1; i++)
 {
  for (j = 1; j<=i ; j++)
  {
   printf(" ");//列印空格
  }
  for (t = 1; t <= (line - i) * 2 - 1; t++)
  {
   printf("*");//列印星號
  }
  printf("\n");
 }
 system("pause");
 return 0;
}