我们想要的是上图,可惜我们设计的时候是这样:
图片2
这是因为屏幕的(0,0)坐标在左上角,其坐标增长方向是x向右(不变),y轴向下增长。
所以我们想要的是图1,但是要按照图2进行线性规划。
我们高中学过线性规划,用线性规划会方便很多
可以得到:
y = -x + n
x >= 0
y >= 0
转化为代码就是必须同时满足以下三种条件
j>=0
&&
i>=0
&&
i
&&
代码:
#include
//j>=0 &&
i>=0 &&
i
int diamond(char c,int n)
{
int i,j;
int a,b;
for(i = 0; i <
n;i++)
{
for(j = 0;j <
n;j++)
{
a = i-j;
b = j+i;
if(j >= 0 &&
i >= 0 && i
< n - j)
printf("*");<