C语言编程:编程打印杨辉三角形,行数由键盘输入,且以等腰三角形形式打印出来
展开全部
来个热乎的,刚写的
#include <stdio.h>
int main()
{
int line;
int i;
int j;
int k;
int yh1[100]={1},yh2[100]={1};//两个数组分别存储第i行和第i-1行数字序列,并交替使用
int *y1=yh1,*y2=yh2,*t;
printf("Please input lines:");
scanf("%d",&line);
for( i=0;i<line;i++)
{
for(k=1;k<line-i;k++)
{
printf(" ");//输出空格
}
for( j=0;j<i;j++)//计算并输出第i行数字
{
printf("%4d",y2[j]);
y2[j+1]=y1[j]+y1[j+1];
}
printf("%4d\n",y2[j]);
t=y2;y2=y1;y1=t;//交替使用数组
}
return 0;
}
追问
不使用指针
追答
从百科里面找的代码改动了一点
#include<stdio.h>
int main()
{
int a[20][20],i,j;
int line;
printf("Please input lines:");
scanf("%d",&line);
for(i=0;i<line;i++)
{
for(j=line;j>=i;j--)
printf(" ");
for(j=0;j<=i;j++)
{
if(i==j||j==0)
a[i][j]=1;
else
a[i][j]=a[i-1][j]+a[i-1][j-1];
printf("%4d ",a[i][j]);
}
printf("\n");
}
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询