空心菱形
来源:互联网 发布:淘宝买玉哪家好 编辑:程序博客网 时间:2024/04/28 01:04
/*17-05-10 21:13 例n=4
*
* *
* *
* *
* *
* *
*
思路:先打印菱形,分成上下三角形,在三角形内进行判断打印星号和空格 分而治之的方法
*/
#include<iostream>
using namespace std;
int main()
{
int n;
int i,j,k; //i 控制行,j控制打印的空格,k控制打印的星号
cout<<"请输入空心菱形的高度:";
cin>>n;
/*控制打印菱形上部分 空心三角形(例n=4) 考虑和下半部分衔接,如下图,
*
* *
* *
* *
*/
for (i=1; i<=n; i++) //控制行
{
for (j=1; j<=n-i; j++) //控制打印空格,上部分空格是没行递减1
{
cout<<" "; //打印输出星号左边的空格
}
for (k=1; k<=2*i-1; k++) //控制打印的星号,(例n=4),每行星号为1,3,5,7,
{
if ( k==2*i-1 || k==1) //每行第一个和最后一个打印星号
{
cout<<"*";
}
else
{
cout<<" ";
}
}
cout<<endl; //打完一行做换行处理
}
/*控制打印菱形下部分(空心三角形)(例n=4)如下图,考虑和上三角形衔接,他要少打一行
* *
* *
*
*/
for (i=1; i<n; i++) //控制行,没有等号,少计算一行
{
for (j=1; j<=i; j++) //打印星号前的空格,倒三角形是递增1(例n=4),每行空格分别为1,2,3
{
cout<<" ";
}
for (k=1; k<=2*n-(2*i+1); k++) //打印星号 (例n=4)每行实心个数分别是5,3,1
{ //与n,i联合关系为 2*n-(2*i+1)
if (k==1 || k==2*n-(2*i+1)) //每行第一个和最后一个打印星号
{
cout<<"*";
}
else
{
cout<<" ";
}
}
cout<<endl; //打完一行做换行处理
}
system("pause");
return 0;
}
- 空心菱形
- 空心菱形
- 空心菱形
- 空心菱形
- 空心菱形
- 空心菱形
- 输出菱形,空心菱形
- java打印菱形,空心菱形
- 打印菱形和空心菱形
- 空心菱形与实心菱形
- 打印一个空心菱形
- 打印空心菱形
- PHP 打印空心菱形
- 空心菱形C实现
- 空心字符菱形
- java 实现空心菱形
- 打印数字空心菱形
- 输出空心菱形问题.
- 完数
- [BUG]无法加载 DLL“djcvt.dll”: 找不到指定的模块
- Android2.2+Eclipse windows xp环境配置,加部分问题解决办法(图文)
- DIY配置 java path 和 ant path
- frameset 框架中的 Top 页面传参两个参数到 left页面的 getLeftMenu(a1,a2)函数中
- 空心菱形
- 每个配置文件最终都会变成一门编程语
- throw new Exception抛出异常的接收
- 使用基本手册:vim
- RoboCup与我
- symbian 下面调用电话拨号的方法
- jpa manyTOMany
- 大数相加
- 远程导入sql server数据