c - 用星号替换帕斯卡三角形中的每个偶数?

标签 c pascals-triangle

我试图用星号 (*) 替换帕斯卡三角形中的每个偶数。到目前为止,我的代码如下所示:

#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;

有人可以帮我吗?

最佳答案

https://ideone.com/qIN4Sf

#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);
}

关于c - 用星号替换帕斯卡三角形中的每个偶数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21999347/

相关文章:

c - C 中的奇怪段错误

c - c中的浮点运算

javascript - 调试帕斯卡三 Angular 形

c++ - 不使用 for/while 循环的 Pascal 三角形计算

java - 帕斯卡三角形正确格式化java

java - 为什么我的帕斯卡三角代码不起作用?

如果缓冲区在 C 中有足够的空间,则将整数复制到缓冲区

c - 以乘法格式显示素因数

c - GCC优化: Error caused by fgets

java - 帕斯卡三角错误输出