C语言编写内置菱形的程序
最近迷上了用C语言编写图形的输出程序,有矩形的、三角形、等腰三角形,平行四边形、菱形、沙漏形。今天尝试着将菱形内置到矩形中,结果成功了,下面将快乐分享给大家,也希望广大C程序爱好者,将宝贵的经验分享出来,让知识传递,让快乐流行。
程序设计思路:
整个程序以循环为主,外层循环控制整体图形的行数;内层循环由三个小循环组成,分别是用来输出左侧的由“*”成的三角形图形,中间的由“$”组成的菱形,右侧的由“*”组成的三角形图形。输出的过程中算法很重要,涉及到了abs函数,用来控制符号个数的变化,需要耐心实践验证。
内置菱形的源程序:
#include
int main()
{
int a,b,c,d,e;
for(a=-9;a<=9;a++)
{
for(b=0;b<=abs(a);b++)
printf("*");
for(c=0;c<=16-abs(a)*2;c++)
printf("$");
for(d=0;d<=abs(a);d++)
printf("*");
printf("\n");
}
return 0;
}
程序解释说明:
#include //加载标准输入输出头文件。
int main()//定义整型主函数。
{
int a,b,c,d,e;//定义整型变量a,b,c,d.,e。
for(a=-9;a<=9;a++)//定义外层循环,从-9到9共19行。
{
for(b=0;b<=abs(a);b++)//内层循环,控制左侧*号的个数,使用abs函数辅助,使个数由10到1,再到10。
printf("*");//输出*号。
for(c=0;c<=16-abs(a)*2;c++)//内层循环,控制中间部分的$号的个数,由1到17,再到1。
printf("$");//输出$ 号。
for(d=0;d<=abs(a);d++)//内层循环,控制右侧*号的个数,使用abs函数辅助,使个数由10到1,再到10。
printf("*");//输出*号
printf("\n");//换行。
}
return 0;//返回主函数值0。
}
以上是我对这个程序的理解及编写思路,请各位爱好者批评指正。
举报/反馈