2个回答
展开全部
#include <iostream.h>
#include <stdio.h>
void main()
{
int n;
printf("请输入行数:");
scanf("%d",&n);
int i,j;
if(n%2==0)//偶数
{
for(i=0;i<n/2;i++) // 偶数时,从0行开
{
for(j=0;j<n/2-1-i;j++)
cout<<" ";
for(j=0;j<2*i+1;j++)
cout<<"*";
cout<<endl;
}
for(;i<=n;i++)
{
for(j=0;j<i-n/2;j++) // 第n/2行也为最多*
cout<<" ";
for(j=0;j<n-1-(i-n/2)*2;j++)
cout<<"*";
cout<<endl;
}
}
else //奇数时
{
for(i=0;i<=n/2;i++) // 从第0行开始计算,第n/2行*最多 (此行*为n个)
{
for(j=0;j<n/2-i;j++)
cout<<" ";
for(j=0;j<2*i+1;j++)
cout<<"*";
cout<<endl;
}
for(;i<=n;i++)
{
for(j=0;j<i-n/2;j++) //i-n/2 表示在第n/2行往下 的第几行中
cout<<" ";
for(j=0;j<n-(i-n/2)*2;j++)
cout<<"*";
cout<<endl;
}
}
}
#include <stdio.h>
void main()
{
int n;
printf("请输入行数:");
scanf("%d",&n);
int i,j;
if(n%2==0)//偶数
{
for(i=0;i<n/2;i++) // 偶数时,从0行开
{
for(j=0;j<n/2-1-i;j++)
cout<<" ";
for(j=0;j<2*i+1;j++)
cout<<"*";
cout<<endl;
}
for(;i<=n;i++)
{
for(j=0;j<i-n/2;j++) // 第n/2行也为最多*
cout<<" ";
for(j=0;j<n-1-(i-n/2)*2;j++)
cout<<"*";
cout<<endl;
}
}
else //奇数时
{
for(i=0;i<=n/2;i++) // 从第0行开始计算,第n/2行*最多 (此行*为n个)
{
for(j=0;j<n/2-i;j++)
cout<<" ";
for(j=0;j<2*i+1;j++)
cout<<"*";
cout<<endl;
}
for(;i<=n;i++)
{
for(j=0;j<i-n/2;j++) //i-n/2 表示在第n/2行往下 的第几行中
cout<<" ";
for(j=0;j<n-(i-n/2)*2;j++)
cout<<"*";
cout<<endl;
}
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int i,j,n;
scanf("%d",&n);
for(i=0;i<n;i++){
j = n+i;
while(j--){
printf("%s",j>2*i?" ":"*");
}
printf("\n");
}
for(i=n-1;i>0;i--){
for(j=0;j<n+i-1;j++){
printf("%s",j<n-i?" ":"*");
}
printf("\n");
}
scanf("%d",&n);
for(i=0;i<n;i++){
j = n+i;
while(j--){
printf("%s",j>2*i?" ":"*");
}
printf("\n");
}
for(i=n-1;i>0;i--){
for(j=0;j<n+i-1;j++){
printf("%s",j<n-i?" ":"*");
}
printf("\n");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询