如何用C++打印金字塔
打印出金字塔,关键在于控制好每行打印的空格和*的数量。这主要是通过控制循环语句的次数来实现的。认真分析打印过程,我们可以编写一个函数用于输出特定数量的字符,它的定义如下:...
打印出金字塔,关键在于控制好每行打印的空格和
*的数量。这主要是通过控制循环语句的次数来实现的。认真分析打印过程,我
们可以编写一个函数用于输出特定数量的字符,它的定义如下:
void printSymbol(int num,char symbol);
其中num是要输出的字符个数,而symbol则是要输出的字符的ASCII。main函数
中可以调用printSymbol函数来。这样上面的打印金字塔程序可以改写如下:
#include <iostream>
using namespace std;
void printSymbol(char symbol, int num)
{
填写语句 // 利用循环输出num个的symbol字符
}
int main(){
int rowsNumber;
char ch;
while(true){
cout<<"Please Enter the Symbol and the Number of Rows:";
cin>>ch>>rowsNumber; // 输入要打印的字符和金字塔打印行数
if(rowsNumber >0)
{
for(int i=0;i< rowsNumber;i++){
填写语句 // 首先利用printSymbol打印当前行(第i行)的?个空格
填写语句 // 然后利用printSymbol打印当前行(第i行)的?个ch
cout<<endl;
}}
else return 0;} 展开
*的数量。这主要是通过控制循环语句的次数来实现的。认真分析打印过程,我
们可以编写一个函数用于输出特定数量的字符,它的定义如下:
void printSymbol(int num,char symbol);
其中num是要输出的字符个数,而symbol则是要输出的字符的ASCII。main函数
中可以调用printSymbol函数来。这样上面的打印金字塔程序可以改写如下:
#include <iostream>
using namespace std;
void printSymbol(char symbol, int num)
{
填写语句 // 利用循环输出num个的symbol字符
}
int main(){
int rowsNumber;
char ch;
while(true){
cout<<"Please Enter the Symbol and the Number of Rows:";
cin>>ch>>rowsNumber; // 输入要打印的字符和金字塔打印行数
if(rowsNumber >0)
{
for(int i=0;i< rowsNumber;i++){
填写语句 // 首先利用printSymbol打印当前行(第i行)的?个空格
填写语句 // 然后利用printSymbol打印当前行(第i行)的?个ch
cout<<endl;
}}
else return 0;} 展开
2个回答
展开全部
#include <iostream>
using namespace std;
void printSymbol(char symbol, int num)
{
for(int j=0;j<num;j++)
cout<<symbol<<' ';
}
int main(){
int rowsNumber;
char ch;
while(true)
{
cout<<"Please Enter the Symbol and the Number of Rows:";
cin>>ch>>rowsNumber;
if(rowsNumber >0)
{
for(int i=0;i< rowsNumber;i++)
{
printSymbol(0,rowsNumber-i);
printSymbol(ch,2*i+1);
cout<<endl;
}
}
else
return 0;
}
}
展开全部
#include <iostream>
using namespace std;
void printSymbol(char symbol, int num)
{
int i;
for(i=1;i<=num;i++)
cout<<symbol; // 利用循环输出num个的symbol字符
}
int main()
{
int rowsNumber;
char ch;
while(true)
{
cout<<"Please Enter the Symbol and the Number of Rows:";
cin>>ch>>rowsNumber; // 输入要打印的字符和金字塔打印行数
if(rowsNumber >0)
{
for(int i=0;i< rowsNumber;i++)
{
printSymbol(' ',rowsNumber-i); // 首先利用printSymbol打印当前行(第i行)的 rowsNumber-i 个空格
printSymbol(ch,2*i-1); // 然后利用printSymbol打印当前行(第i行)的 2*i-1 个ch
cout<<endl;
}
}
else return 0;
}
}
代码如上
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询