因为时间关系,我数学不好,你先看看我以前做的0的图形,希望对你有帮助/*整个图形0我把他分成了三部分
第一部分为上三角形
第二部分为矩形
第三部分为倒下角,也就是下面的下三角*/
#include<stdio.h>
void ssj();//上三角
void zj();//中间
void xsj();//下三角
int main()
{
ssj();//上三角
zj();//中间
xsj();//下三角
return 0;
}
void ssj()//上三角
{
int i,j;
for(i=0;i<2;i++)//外层循环控制行
{
for(j=0;j<=i*(-1)+1;j++)//j<=i*(-1)+1这个是要计算出来考虑的,就是打印左边的空格
{
printf(" ");//打印空格
}
for(j=0;j<=i+i+2;j++)//这个是打印*和挖空
{
if(i==0||i==2||j==0||j==i+i+2)//满足条件为图形的边
{
printf("*");
}
else{ //否则打印空格,也就是挖空
printf(" ");
}
}
printf("\n");//外层循环的行
}
}
void zj()//中间部分
{
int k,l;
for(k=0;k<7;k++)
{
for(l=0;l<7;l++)
{
if(k==7||l==0||l==6)
{
printf("*");
}
else{
printf(" ");
}
}
printf("\n");
}
}
void xsj()
{
int z,x;
for(z=0;z<2;z++)
{
for(x=0;x<=z;x++)
{
printf(" ");
}
for(x=0;x<=z*(-2)+4;x++)
{
if(z==1||x==0||x==z*(-2)+4)
{
printf("*");
}
else{
printf(" ");
}
}
printf("\n");
}
}
|