左詰めのパスカルの三角形を出力しようとしています。プログラムは最初に、プロンプト「N:」を介してユーザーから 1 つの正の整数 N を読み取る必要があります。次に、プログラムはパスカルの三角形の最初の N 行を画面に出力します。ただし、外側の 2 つの for ループに問題があると思います。(N=3)
1
1,1
1,2,1を取得する代わりに
1
1,2
2,4,4を取得しています
#include <stdio.h>
int main(void) {
int input,i,j,k,p,N,x;
int f1=1;
int f2=1;
int f3 = 1;
printf("N:");
scanf("%d",&N);
for(i=1;i<=N;i++){
for(j=1;j<=i;j++){
for(x = 1; x<= N-1; x++){
f1 = f1 * x;
}
for(x = 1; x <= j-1; x++){
f2 = f2 * x;
}
for(x = 1; x <= N-j; x++){
f3 = f3 * x;
}
p= (f1)/(f2*f3);
if(j==i)
printf("%d",p);
else
printf("%d,",p);
}
printf("\n");
}
return 0;
}