#include "stdio.h"
int main()
{
int a[100][100],i,j,num;
printf("请输入你要打印的行数");
scanf("%d",&num);
for(i=0;i<100;i++)
{
for(j=0;j<100;j++); //这里多了一个分号
a[i][j]=0;
}
for(i=0;i<num;i++) //这里设置好了杨辉三角每行第一个数
a[i][0]=1;
for(j=1;j<num;j++) //这里设置了杨辉三角第num+1行的数,因为i=num
a[i][j]=a[i-1][j]+a[i-1][j-1];
for(i=0;i<num;i++)
{
for(j=0;j<i;j++) //这里输出杨辉三角形,但每行的最后一个数不会输出,因为j<i,所以像a[0][0],a[1][1]不会输出。
printf("%d",a[i][j]);
printf("\n");
}
return 0;
}
稍微改一下
#include "stdio.h"
int main()
{
int a[100][100],i,j,num;
printf("请输入你要打印的行数");
scanf("%d",&num);
for(i=0;i<100;i++)
{
for(j=0;j<100;j++) //这里把分号删了
a[i][j]=0;
}
for(i=0;i<num;i++) //这里设置好了杨辉三角每行的数,用大括号表示哪部分是循环体,如果没有大括号,就只执行后面一条语句
{
a[i][0]=1;
for(j=1;j<=i;j++) //这里设置了杨辉三角每行除第一个的数
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
for(i=0;i<num;i++)
{
for(j=0;j<=i;j++) //这里把判断条件改了
printf("%d",a[i][j]);
printf("\n");
}
return 0;
}