int i,j,m;//index
int nnz;//非零数(number of nonzeros)
for(i=0;i<non;i++)
nnz+=nonan[i];
double *val=calloc(nnz,sizeof(double));//値を保持するベクトルです
int *col_ind=malloc(sizeof(int)*nnz);//列番号を保持するベクトルです
m=0;
for(i=0;i<non;i++)
for(j=0;j<nonan[i];j++){
col_ind[m]=nbn[i][j];
m++;
}
int *row_ptr=malloc(sizeof(int)*(nn+1));//行の仕切り板です
m=0;
for(i=0;i<nn+1;i++){
row_ptr[i]=m;
m+=nonan[i];
}