我正在尝试用星号(*)替换Pascal三角形中的每个偶数。到目前为止,我的代码看起来像这样:
#include<stdio.h>
#include<stdlib.h>
long calc( int );
int main()
{
int i,j,row,pas;
printf("Enter no. of rows in pascal triangle : ");
scanf("%d", &row);
for(i=0; i<row; i++)
{
for(j=0; j<=(row-i-1); j++)
printf(" ");
for(j=0; j<=i; j++)
{
pas=calc(i)/(calc(j)*calc(i-j));
printf("%ld ",pas);
}
printf("\n");
}
system("pause");
return 0;
}
long calc( int num)
{
int x;
long res=1;
for(x=1; x<=num; x++)
res=res*x;
return (res);
}
我需要插入这段代码(也许?)
if (i%2==0)
{
i = asterisk;
printf("%c", asterisk);
}
当然我会放入main()
char asterisk = 42;
有人能帮助我吗?
答案 0 :(得分:1)
#include<stdio.h>
#include<stdlib.h>
char asterisk = 42;
long calc( int );
int main()
{
int i,j,row,pas;
printf("Enter no. of rows in pascal triangle : ");
scanf("%d", &row);
printf("\n");
for(i=0; i<row; i++)
{
for(j=0; j<=(row-i-1); j++)
printf(" ");
for(j=0; j<=i; j++)
{
pas=calc(i)/(calc(j)*calc(i-j));
if (pas%2==0)
printf("%c ", asterisk);
else
printf("%ld ",pas);
}
printf("\n");
}
system("pause");
return 0;
}
long calc( int num)
{
int x;
long res=1;
for(x=1; x<=num; x++)
res=res*x;
return (res);
}