习题4-9 打印菱形图案 (15 分)

习题4-9 打印菱形图案 (15 分)

本题要求编写程序,打印一个高度为n的、由“*”组成的正菱形图案。

输入格式

输入在一行中给出一个不超过10000的正整数N。

输出格式

输出由n行星号“*”组成的菱形,如样例所示。每个星号后跟一个空格。

输入样例

7

输出样例

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

代码

#include

int main() {
    int n;
    scanf("%d",&n);
    int m = (n+1)/2;
    //上半部分 
    for(int i = 1; i <= m; ++i) { 
        for(int j = i; j <= m-1; j++){ 
            printf("  ");
        }
        for(int j = i; j < 3*i-1; ++j){ 
            printf("* ");
        }
        printf("\n");
	}
	
    //下半部分 
    for(int i = m-1; i > 0; --i) {
        for(int j = i; j <= m-1; j++){  
            printf("  ");
        }
        for(int j = i; j < 3*i-1; ++j){ 
            printf("* ");
        }
        printf("\n");
    }
    return 0;
}

仔细想想其实不难啊,但是做的时候就做了很久orz
还是水平太低…

你可能感兴趣的:(做题,c语言)