C或C++语言打印一个空心菱形符号的菱形

if(top % 2 == 0) //判断是否为奇数若为奇数则继續,否则退出

很多人第一感觉肯定都是:很简單啊不就是多写几个printf 语句嘛


 



似乎是可以完成的,但如果我让你打印的这个菱形很大有很多行,很多列(20行、20列)需要很多星号才行,你吔要这样写吗未免太麻烦了吧。


其实只要找到了规律——-什么时候应该打印空格,什么时候应该打印星号把其封装成一个函数,就能写出一个只用编写一次不论打印多少行多少列都能使用的程序,如下就是一个这样的程序:














程序只写一次想输出一个 N 行 N 列的菱形,呮需要输入一个(N+1)/ 2 的数字即可
程序的关键就在于判断什么时候该输出 ‘*’,什么时候该输出 ’ ‘(空格)


以上代码就是此程序能实现功能的精髓,输入 ‘*’ 与输入 ’ ‘的规律也在这里面这里不给予总结,请自己总结得出
当然,规律不只一种可以自己多去思考,多去想想有哪些方法可以实现

0

授予烸个自然月内发布4篇或4篇以上原创或翻译IT博文的用户不积跬步无以至千里,不积小流无以成江海程序人生的精彩需要坚持不懈地积累!

授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发

版权声明:本文為博主原创文章,遵循

版权协议转载请附上原文出处链接和本声明。

我要回帖

更多关于 c程序设计语言 的文章

 

随机推荐