首先是金字塔
#includeint main() { int line = 0; scanf_s("%d",&line); int i = 0; for ( i = 0; i < line; i++) { int j = 0; //打印空格 for ( j = 0; j < line-1-i; j++) { printf(" "); } for ( j = 0; j < 2*i+1; j++) { printf("*"); } printf("n"); } return 0; }
运行结果:
紧接着就是菱形了,思考一下?如果把金字塔倒过来减去金字塔最后一行,两者结合在一起是不是就得到了菱形
金字塔翻转
#includeint main() { int line = 0; scanf_s("%d",&line); int i = 0; for ( i = 0; i < line-1; i++) { int j = 0; //打印空格 for ( j = 0; j < i; j++) { printf(" "); } //打印* for ( j = 0; j < 2*(line-1-i)-1; j++) { printf("*"); } printf("n"); } return 0; }
运行结果:
菱形:
#includeint main() { int line = 0; scanf_s("%d",&line); int i = 0; //金字塔上半部分 for ( i = 0; i < line; i++) { int j = 0; //打印空格 for ( j = 0; j < line-1-i; j++) { printf(" "); } //打印空格 for ( j = 0; j < 2*i+1; j++) { printf("*"); } printf("n"); } //金字塔下半部分 for ( i = 0; i < line-1; i++) { int j = 0; //打印空格 for ( j = 0; j <= i; j++) { printf(" "); } for ( j = 0; j < 2*(line-1-i)-1; j++) { printf("*"); } printf("n"); } return 0; }
运行结果:
这个小程序也是挺好玩的,利用for循环的嵌套,有兴趣的小伙伴有空的时候可以尝试一下



