c语言输出五角星程序,c语言入门之绘制五角星.doc

问题描述;

输出五角星的即是输出满足特定条件的区域范围,再用if 函数进行选择性编辑。而在输出五角星区域范围的时候,可将该范围进行分割描述,每一个部分都找出行列之间的关系,用这种关系可以特定描述某个范围。

设计思路:

用*编出一个五角星,可以将其分解成三个部分,分别为:顶部三角形,中央梯形,底部两个对称的三角形。

在编辑图形的时候,可以考虑使用二维数组,经过测算,定义数组p[50][51],再定义整型变量i,j,以I 表示列。J 表示行。进行编辑。将五角星顶点定在(25,0)处,用 I ,j招出满足在三角形内部时满足的关系。则用for 函数循环。并用if函数写出判断条件,当满足条件时,数组元素p[i][j]输出*,反之输出空格。同理进行梯形和底部三角形的编辑。直至输出完毕,进行换行。

源码及注释:

#includevoid main()

{

char p[50][51]; /*定义字符型数组*/

int i,j; /*定义整型变量*/

char m,n;

m=(“*”);n=(“ “);

for(i=0;i<=6;i=i+2) /*从第一行开始循环*/

{

for(j=0;j<=51;j++)

{

If(j<=25+i/2&&j>=25-i/2) /*满足顶部三角形I,j 条件*/

printf(“%c”,m);

else

printf(“%c”,n);

printf(“%c”,p[i][j]); /*输出顶部数组*/

}

printf(“\n”); /*换行*/

}

for(i=8;i<=14;i=i+2) /*从第8行开始循环*/

{

for(j=0;j<=51;j++)

{if(j>=12+i/2&&j<=38-i/2 /*满足中央梯形的条件*/

printf(“%c”,m);

else

printf(“%c”,n);

printf(“%c”,p[i][j]); /*输出中间数组*/

}

printf(“\n”);

}

for(i=16;i<=24:i=i+2) /*从地16行循环*/

{

for(j=0;j<=51;j++)

{if(j>=11+i&&j<=23+i/2) /*满足右下角三角形条件*/

printf(“%c”,m);

else if(j<=39-i&&j>=27-i/2) /*满足左下角三角形条件*/

printf(“%c”,m);

else

printf(“%c”,n);

printf(“%c”,p[i][j]); /*输出数组*/

}

printf(“\n”);

}

}

流程图:

开始

输入p[50][51]

I j m n

*m 空格n

N

J<=25+i/2且

J>=25-i/2

I=0 i=i+2

J=0,j++

J<=51

Y

N

Y

I<=6

Y

输出p[i][j]换行

N

输出m

输出n

同理构造另外两部分

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值