控制台应用程序C++输出菱形

// Rhombus.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <iostream>
#include <math.h>
using namespace std;
void rhombus(char,char,int);
int _tmain(int argc, _TCHAR* argv[])
{
    rhombus(O, ,5);
    return 0;
}
void rhombus(char chSymbol=*,char chSpaece= ,int rowNum=11)
{
    //char chSymbol=‘*‘;    //符号
    //char chSpaece=‘ ‘;    //空格
    //int rowNum=11;    //行数,为奇数时可输出菱形
    int midNum=rowNum/2;    //中间数
    for(int i=0;i<rowNum;i++){
        for(int j=0;j<rowNum;j++)
        {
            int symbolNum=i>midNum?2*(rowNum-i)-1:2*i+1;    //符号的个数
            int spaeceNum=abs(midNum-i);    //空格的个数
            
            if(j<spaeceNum)    //当循环到空格列时
                cout<<chSpaece;
            
            else if(j>=spaeceNum&&j<spaeceNum+symbolNum)    //当循环到符号列时
                cout<<chSymbol;
            
            else if(j>=spaeceNum+symbolNum)    //当循环到过了符号,再到空格时
                cout<<chSpaece;
        }
        cout<<"\n";
    }
}

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。