Was ich tun möchte, ist n (von Benutzer) Elemente in eine Datei zu schreiben. Dann lesen Sie die Elemente erneut in ein Array und sortieren Sie sie und schreiben Sie sie erneut in einer anderen Datei. Schließlich öffnen Sie diese Datei und zeigen ihren Inhalt an. Aber der Code scheint nicht zu funktionieren, alle Syntax, Grammatik usw. wird überprüft, was ist der Fehler ??Was ist der Fehler in diesem Code? (C - Dateibehandlung)
#include<stdio.h>
struct data
{
int a,ar[100];
}e;
int main()
{ FILE *f1,*f2;
int i,j,n,t;
printf("\nEnter Array Size:");
scanf("%d",&n);
f1=fopen("Array.txt","w");
for(i=0;i<n;i++)
{ printf("\nEnter %d element:",i+1);
scanf("%d",&e.a);
fprintf(f1,"%d",e.a);
}
fflush(stdin);
fclose(f1);
rewind(f1);
i=0;
f1=fopen("Array.txt","r");
while((fscanf(f1,"%d",&e.ar[i++]))!=EOF)
{}
fclose(f1);
for(i=0;i<n;i++)
{ for(j=0;j<n-1;j++)
{ if(e.ar[j]>e.ar[j+1])
{ t=e.ar[j];
e.ar[j]=e.ar[j+1];
e.ar[j+1]=t;
}
}
}
f2=fopen("Sort.txt","w");
i=0;
while((fprintf(f2,"%d",e.ar[i]))!=EOF)
{ i++;}
fclose(f2);
f2=fopen("Sort.txt","r");
while((fscanf(f2,"%d",&e.a))!=EOF)
{ printf("%d ",e.a);
}
fclose(f2);
return 0;
}
Haben Sie versucht, es auszuführen und zu debuggen? –
@SimonBosley Ja, sehr oft. Manchmal läuft es und druckt Müll und andere Male einfach nur – Kunal
So @Kunal, wenn Sie es zu debuggen, welche Zeile schief geht und wie? –