首页 > 代码库 > 武汉科技大学ACM :1008: 小t和小w

武汉科技大学ACM :1008: 小t和小w

Problem Description

小t最近学了C语言,他想要在女朋友小w面前展示一下自己的能力,小w喜欢如样例所示的图形,
想让小t写一个程序来输出这样的图形,小t拿到后感觉有点困难,小t不想在女朋友面前尴尬,
所以聪明的你来帮助帮助他吧。

Input

输入图形所占的列数n(n<20且n为奇数)(多组数据)

Output

输出图形,输出一个图形后面接一行换行

Sample Input

5

7

Sample Output

  *

 ***

*****

 ***

  *

 

   *

  ***

 *****

*******

 *****

  ***

   *

 

 

HINT

注意每个图形中一行最前面的空白由空格填充,最后一个‘*‘之后不要有多余的空格。

 1 #include <stdio.h> 2 int main() 3 { 4     int m,i,j,k; 5     while(scanf("%d",&m) != EOF) 6     { 7         for(i=1;i<=m/2;i++) 8         { 9             for(j=i;j<=m/2;j++)10             {11                 printf(" ");12             }13             for(k=1;k<=2*i-1;k++)14             {15                 printf("*");16             }17             printf("\n");18         }19         for(i=1;i<=m;i++)20         {21             printf("*");22         }23         printf("\n");24         for(i=1;i<=m/2;i++)25         {26             for(k=i;k<=2*i-1;k++)27             {28                 printf(" ");29             }30             for(j=1;j<=m-2*i;j++)31             {32                 printf("*");33             }        34             printf("\n");35         }36         printf("\n");37     }38     39     return 1;40 }

其他代码:

 1 #include<stdio.h> 2 int main() 3 { 4     int n,i,j,k; 5     while(~scanf("%d",&n)) 6     { 7         for(i=1;i<=n/2;i++) 8         { 9             for(j=1;j<n/2+2-i;j++)10                 printf(" ");11             for(k=n/2+2-i;k<=n/2+i;k++)12                 printf("*");13             printf("\n");14         }15         for(i=1;i<=n;i++)16             printf("*");17         printf("\n");18         for(i=1;i<=n/2;i++)19         {20             for(j=1;j<=i;j++)21                 printf(" ");22             for(k=i+1;k<=n-i;k++)23                 printf("*");24             printf("\n");25         }26         printf("\n");27     }28     return 0;29 }

 

武汉科技大学ACM :1008: 小t和小w