#include<stdio.h> int main() { int i = 0, j = 0, n; scanf("%d", &n); { { for (i = 0; i < n; i++) //打印上半部分 { for (j = 0; j < n - i; j++) { printf(" "); } for (j = 0; j <= i; j++) { printf("* "); } printf("\n"); } for (i = 0; i < n + 1; i++) //打印下半部分 { for (j = 0; j < i; j++) { printf(" "); } for (j = 0; j <= n - i; j++) { printf("* "); } printf("\n"); } } } return 0; }
写此类题的时候,一定要将图分为两部分,而且中间那行,要分为下半部分,你理解我的代码就知道我为什么要这样说了,而且应该时时刻刻都关注行和列的关系,即 i 与 j 的关系,自己再动动手,规律就找出来了。加油兄弟