void main()
{
int a[20000][2],i,j,count=0
FILE *fp
fp=fopen("d:\\1.txt","r")
/**读入**/
for(i=0i<20000i++)
{
if(fscanf(fp,"%d %d",&a[i][0], &a[i][1])==EOF)
break
count++ //count为读入的数对个数,如1 2为一对
}
/**输出**/
for(i=0i<counti++)
{
for(j=0j<2j++)
printf("%d ",a[i][j])
printf("\n")
}
fclose(fp) //记住关闭文件
}
运行结果如下:
271 86 50 0 0 111
A 64 45 0 0 1010
B 13 33 0 0 100000
C 22 37 0 0 00000
D 32 39 0 0 10110
......
换行符其实没有必要储存,如果起始行有空格也没有问题,可以在函数中这么改:
fscanf(fp,"%d\n", &n)
fscanf(fp, "%c %d %d %d %d %d %s\n",&(HT[i].elem), &(HT[i].weight), &(HT[i].parent), &(HT[i].lchild), &(HT[i].rchild), str)
则HT[i].elem读入的是序号,如给出的A、B、C、D
fscanf(fp,"%d\n", &n)
HT[i].elem读入的是第一组数字的首位1
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)