当前位置: 代码迷 >> C语言 >> [求助]*的金子塔问题啊!
  详细解决方案

[求助]*的金子塔问题啊!

热度:476   发布时间:2006-09-23 21:43:32.0
[求助]*的金子塔问题啊!

main()
{
int i,j,k,row;
printf("please show the row:");
scanf("%d",row);
for(i=0;i<=row;i++)
{
for(j=0;j<=row-i-1;j++)
printf(" ");
for(k=0;k<=2i+1;k++)
printf("*");
printf("\n");
}
getch();
}

我写了这样的代码啊!
想显示出

*
***
*****
*******
想通过输入的行数,按照这个图形输出金子塔形啊!
但不知道为什么编译器会出错啊!
不知道错在哪啊!请高手指点啊

搜索更多相关的解决方案: row  金子  printf  图形  

----------------解决方案--------------------------------------------------------
以下是引用zero442在2006-9-23 21:43:32的发言:

main()
{
int i,j,k,row;
printf("please show the row:");
scanf("%d",&row);
for(i=0;i<row;i++)
{
for(j=0;j<=row-i-1;j++)
printf(" ");
for(k=0;k<2*i+1;k++)
printf("*");
printf("\n");
}
getch();
}

我写了这样的代码啊!
想显示出

*
***
*****
*******
想通过输入的行数,按照这个图形输出金子塔形啊!
但不知道为什么编译器会出错啊!
不知道错在哪啊!请高手指点啊


----------------解决方案--------------------------------------------------------
呵呵,我曾经和楼主一样犯了个错误....2i!=2*i

----------------解决方案--------------------------------------------------------
;k<=2i+1
摆脱了老大.有这种写法么...那有2i的.

----------------解决方案--------------------------------------------------------

main()
{ int a,m,n,i,j,h[10][20];
printf("\n");
for(i=9,j=0;i>=0;i--,j++)
{ h[i][j]=1;
h[i][9]=1;
h[i][10]=0;
}
for(i=1,j=8;i<=9;i++,j--)
{ for(a=j;h[i][a+1]!=0;a++)
h[i+1][a]=h[i][a]+h[i][a+1];
}
for(i=0,j=9;i<=9;i++,j--)
{ for(m=j;m>0;m--)
printf(" ");
for(n=j;h[i][n+1]!=0;n++)
printf("%d ",h[i][n]);
printf("1 \n");
}
}


而结果输完杨辉三角后多了一句是 Abnormal program termination

这是什么意思???????? 明明会编译和运行。.为什么还有这一行....,,,
各位高手教教小弟.....小弟在此先谢 了 !!!!!!!!!!


----------------解决方案--------------------------------------------------------


为你修改后的代码

#include <stdio.h>
int main()
{
int i,j,k,row;
printf("please show the row:");
scanf("%d",&row);
for(i=0;i<row;i++)
{
for(j=0;j<=row-i-1;j++)
printf(" ");
for(k=0;k<2*i+1;k++)
printf("*");
printf("\n");
}
/*getch();*/
return 0;
}


----------------解决方案--------------------------------------------------------

[QUOTE]main()
{
int i,j,k,row;
printf("please show the row:");
scanf("%d",row);
for(i=0;i<=row;i++)
{
for(j=0;j<=row-i-1;j++)
printf(" ");
for(k=0;k<=2i+1;k++)/*应该是2*i+1把*/
printf("*");
printf("\n");
}
getch();
}

我写了这样的代码啊!
想显示出

*
***
*****
*******
想通过输入的行数,按照这个图形输出金子塔形啊!
但不知道为什么编译器会出错啊!
不知道错在哪啊!请高手指点啊
[/QUOTE]


----------------解决方案--------------------------------------------------------
  相关解决方案