有更讨巧的方式,但笔者不建议这么做。
Description
给定一个字符,用它构造一个对角线长5个字符,倾斜放置的菱形。
来源:中国大学MOOC程序设计与算法(一)第一周测验(2018年秋季)
Input
输入只有一行, 包含一个字符。
Output
该字符构成的菱形。
Sample Input
*
Sample Output
*
***
*****
***
*
#include <stdio.h>
main(){
char a;
int mid=3,cur=1,i,f=1,space=2,num;
while (cur<=5){
if (cur>=mid) f=-1;
for (i=1;i<=space;i++)
printf(" ");
num=3-(space-1)*2;
for (i=1;i<=num;i++)
printf("*");
printf("\n");
space-=f;
cur++;
}
}
/*
num=3-(space-1)*2
line space num
1 2 1
2 1 3
3 0 5
4 1 3
5 2 1
*/