C打印出钻石形状
最近开始看C语言课程设计的书,看到上面又一道题目是让学生实现一个用*打印出Diamand形状,我先自己设计了一个算法,然后再看了书上的算法,下面我将会放出我自己的算法和书上给出的两种算法:
效果如下:
下面是我设计的算法:
#include<stdio.h>
void Diamand(int);
int main()
{
int number;
printf(".请输入您要输出的Diamand的大小:");
scanf("%d",&number);
Diamand(number);
return 0;
}
void Diamand(int number)
{
int maxStar=2*number-1;
int i,j,k,space,star;
for(i=1;i<number+1;i++)
{
if(i<=(number/2)+1)
{
space=maxStar-i;
for(j=0;j<space;j++)
{
printf(" ");
}
//打印*
star=2*i-1;
for(k=1;k<star+1;k++)
{
printf("*");
}
printf("\n");
}
else
{
int l=(number/2+1)*2-i;
space=maxStar-l;
star=2*l-1;
for(j=0;j<space;j++)
{
printf(" ");
}
for(k=1;k<star+1;k++)
{
printf("*");
}
printf("\n");
}
}
}
下面是书上给出设计的算法:
void Dimand()
{
int i,j,k;
printf("打印菱形图案\n");
for(i=1;i<=4;i++)
{
for(j=1;j<=16-i;j++)
{
printf(" ");
}
for(k=1;k<=(2*i-1);k++)
{
printf("*");
}
printf("\n");
}
for(i=1;i<=3;i++)
{
for(j=1;j<=i+12;j++)
{
printf(" ");
}
for(k=1;k<=(7-2*i);k++)
{
printf("*");
}
printf("\n");
}
}
今天的文章C打印出钻石形状_钻石形状分类11种分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/85679.html