c++输入一个整数n,打印出一个用*表示的n行的三角形,第一行一个,第二行三个,以此类推。跪求解答!!!!!
3个回答
展开全部
你这么看吧···
第一排是输出2个空格一个星号,2个空格
第二排是输出1个空格三个星号,1个空格
第三排是输出0个空格五个星号,0个空格
n=3
总结出一个规律么,长度为2*n-1
第a排的输出是这样的
n-a个空格,a*2-1个星号,n-a个空格
这个·你可以多玩几排试试
所以么······
for(int i=1;i<=n;i++){
for(int j=0;j<n-i;j++)
printf(" ");
for(int j=0;j<i*2-1;j++)
printf("*");
for(int j=0;j<n-i;j++)
printf(" ");
}
大概这样就行了······,反正思路清楚了写循环就很简单了
第一排是输出2个空格一个星号,2个空格
第二排是输出1个空格三个星号,1个空格
第三排是输出0个空格五个星号,0个空格
n=3
总结出一个规律么,长度为2*n-1
第a排的输出是这样的
n-a个空格,a*2-1个星号,n-a个空格
这个·你可以多玩几排试试
所以么······
for(int i=1;i<=n;i++){
for(int j=0;j<n-i;j++)
printf(" ");
for(int j=0;j<i*2-1;j++)
printf("*");
for(int j=0;j<n-i;j++)
printf(" ");
}
大概这样就行了······,反正思路清楚了写循环就很简单了
展开全部
int main()
{
int n;
std::cin>>n;
for(int i=1;i<=n;i++)//n行
{
for(int j=1;j<=n-i;j++)
{
std::cout<<" ";//第i行先输出n-i个空格
}
for(int k=1;k<2*i-1;k++)
{
std::cout<<"*";//第i行输出2*i-1个*
}
std::cout<<std::endl;//一行输出结束进行换行
}
return 0;
}
{
int n;
std::cin>>n;
for(int i=1;i<=n;i++)//n行
{
for(int j=1;j<=n-i;j++)
{
std::cout<<" ";//第i行先输出n-i个空格
}
for(int k=1;k<2*i-1;k++)
{
std::cout<<"*";//第i行输出2*i-1个*
}
std::cout<<std::endl;//一行输出结束进行换行
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
for (int i=0;i<line;i )
{
int num=i*2-1;
for (int j=0;j<num;j )
{
printf("*");
}
printf("\n");
}
{
int num=i*2-1;
for (int j=0;j<num;j )
{
printf("*");
}
printf("\n");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询