Ann - 2008-04-09 19:01:23

#include<stdio.h>
#include<stdlib.h>

double *f(int w, int k)
{
    int i,j;
    double *T=malloc(w*k*sizeof(double));
    for(i=0;i<k;i++)
    T[i]=1.0/(i+1);
    for(j=1;j<w;j++)
    {
    for(i=0;i<k;i++)
        T[k*j+i]=T[k*(j-1)+i]*T[i];
    }
    return T;
}

int main()
{
    int w,k,i,j;
    w=8;
    k=6;
    double *T;
    T=f(w,k);
    for(i=0;i<w;i++)
    {
    for(j=0;j<k;j++)
        printf("%f ",T[i*k+j]);
    printf("\n");
    }
    free(T);
    return 0;
}

GotLink.pl