
我用fwrite和fprintf都报错了,但是数表的输出又没错,有没有人能给我做个典范.
#include<stdio.h>
int *creat(int n)
{
int *a=(int*)malloc(n*n*sizeof(int));
//int *a=(int*)calloc(n*n,sizeof(int));
int i,j;
FILE *fp=fopen("test1-2.dat","w");
for(i=0;i<n;i++)
{
*(a+i*n)=i*4+1;
fprintf(fp,"%d\t",*(a+i*n));
for(j=1;j<=i;j++)
{
*(a+i*n+j)=*(a+i*n+j-1)+2;
fprintf(fp,"%d\t",*(a+i*n+j));
}
//fwrite(a,sizeof(*a),n*n,fp);
fprintf(fp,"\n");
}
fclose(fp);
return a;
}
int main()
{
int *a,m,i,j;
scanf("%d", &m);
a=creat(m);
for(i=0;i<m;i++)
{
for(j=0;j<=i;j++)
{
printf("%d\t",*(a+i*m+j));
}
printf("\n");
}
return 0;
}