打印一个菱形

方便简洁的打印一个菱形

分析:我们可以认为一个菱形是由4条直线组成,分别是:y=x+r,y=x-r,y=-x+r,y=-x+3*r,如图:

具体代码如下:

  1 #include <stdio.h>  
  2 int main()  
  3 {  
  4     int r=0;  
  5     scanf("%d",&r);  
  6     int x,y;  
  7     for(x=0;x<=2*r;x++)  
  8     {  
  9         for(y=0;y<=2*r;y++)  
 10         {  
 11             if(y<=x+r && y>=x-r && y>=-x+r && y<=-x+3*r)  
 12             {  
 13                 printf("*");  
 14             }  
 15             else  
 16                 printf(" ");  
 17         }  
 18         printf("\n");  
 19     }  
 20     return 0;  
 21 }

结果如下:


注意: 可以修改代码中第11行,得到菱形的边框

修改第11行代码为:

if(y==x+r || y==x-r || y==-x+r || y<=-x+3*r)  


也可以修改为:

if(y==x+r || y==x-r || y==-x+r || y<=-x+3*r)  

全部评论

相关推荐

LazyBreeze:项目尽量体现你对技术的理解和深度,不是说把中间件用一下就完事了,你项目里面提到集群和分布式,你真在服务器上部署过吗,感觉太假了,第二个项目说自己用了微服务的什么组件,只是用了没有自己的思考,很难让面试官注意到你的简历。针对某几个技术点自己多思考一下,考虑一下有没有别的替代方案,可以写一下,即使没有真的实现
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-18 18:23
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务