代码改变世界

C/C++经典程序训练5---图形打印问题 SDUT ACM

2013-11-30 21:13  XF邪神  阅读(724)  评论(0编辑  收藏  举报

 

题目描述

 

图形的规则如下 ,要求输入n的值,按照图形的打印规则打印出相关的图形:

 

输入

 

输入整数n。

 

输出

 

按图形的规律打印出相关的图形。

 

示例输入

 

4

 

示例输出

 

   +
  +*+
 +***+
+*****+
 +***+
  +*+
   +

 

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