c语言问题,怎么实现上下等腰三角形的
c语言问题#include<stdio.h>voidmain(){inti,j,k,n=10;for(k=1;k<=n;k++){for(i=1;i<=10-k;i++)...
c语言问题
#include <stdio.h>
void main()
{
int i,j,k,n=10;
for(k=1;k<=n;k++)
{
for(i=1;i<=10-k;i++)
printf(" ");
for(j=1;j<=k;j++)
printf(" *");
printf("\n");
}
}
怎么实现功能的 展开
#include <stdio.h>
void main()
{
int i,j,k,n=10;
for(k=1;k<=n;k++)
{
for(i=1;i<=10-k;i++)
printf(" ");
for(j=1;j<=k;j++)
printf(" *");
printf("\n");
}
}
怎么实现功能的 展开
3个回答
展开全部
这个程序没有实现上下等腰三角形。只是输出了上面一个等腰三角形。它的外循环是输出N行,在每一行上先输出10-k个空格,再输出K个星号后换行。要想再得到下一半的等腰三角形,可以再添加一段程序段:
#include <stdio.h>
void main()
{
int i,j,k,n=10;
for(k=1;k<=n;k++)
{
for(i=1;i<=10-k;i++)
printf(" ");
for(j=1;j<=k;j++)
printf(" *");
printf("\n");
}
for(k=n-1;k>=1;k--)
{
for(i=1;i<=10-k;i++)
printf(" ");
for(j=1;j<=k;j++)
printf(" *");
printf("\n");
}
}
#include <stdio.h>
void main()
{
int i,j,k,n=10;
for(k=1;k<=n;k++)
{
for(i=1;i<=10-k;i++)
printf(" ");
for(j=1;j<=k;j++)
printf(" *");
printf("\n");
}
for(k=n-1;k>=1;k--)
{
for(i=1;i<=10-k;i++)
printf(" ");
for(j=1;j<=k;j++)
printf(" *");
printf("\n");
}
}
展开全部
因为每次循环的时候都输出了10-k个空格与k个(空格+星号)
所以根据输出的数量
第一行输出了10个空格、一个星号
第二行输出了9个空格、一个星号 、一个空格、一个星号
第三行输出了8个空格、一个星号、一个空格、一个星号、一个空格、一个星号
由此可见,最左侧的空格数量的逐一递减的,所以可以构成等腰三角形
所以根据输出的数量
第一行输出了10个空格、一个星号
第二行输出了9个空格、一个星号 、一个空格、一个星号
第三行输出了8个空格、一个星号、一个空格、一个星号、一个空格、一个星号
由此可见,最左侧的空格数量的逐一递减的,所以可以构成等腰三角形
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的要求如果没理解错的话是输出一个菱形吧,下面提供我的代码:
#include<stdio.h>
void main()
{
int i,j,k;
for(i=1;i<=5;i++)
{
for(j=1;j<=5-i;j++)printf(" ");
for(k=1;k<=2*i-1;k++)printf("*");
printf("\n");
}
for(i=4;i>=1;i--)
{
for(j=1;j<=5-i;j++)printf(" ");
for(k=1;k<=2*i-1;k++)printf("*");
printf("\n");
}
return ;
}
#include<stdio.h>
void main()
{
int i,j,k;
for(i=1;i<=5;i++)
{
for(j=1;j<=5-i;j++)printf(" ");
for(k=1;k<=2*i-1;k++)printf("*");
printf("\n");
}
for(i=4;i>=1;i--)
{
for(j=1;j<=5-i;j++)printf(" ");
for(k=1;k<=2*i-1;k++)printf("*");
printf("\n");
}
return ;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询