Akademisyenler öncülüğünde matematik/fizik/bilgisayar bilimleri soru cevap platformu
1 beğenilme 0 beğenilmeme
1.7k kez görüntülendi

C ile txt dosyasına yazılmış dizi elemanlarını,txt dosyasından okuyup,değerleri ekranda gösterme ?

öncelikle dosyayı yazma modunda açıp elemanları kod üstünden gönderdik.kalan kısmıda bu şekilde.


soru açık görünüyorda,ayrıntı istenirse ekleyebilirim.

Veri Bilimi kategorisinde (159 puan) tarafından  | 1.7k kez görüntülendi

read modda açıp texti bir arraya aktarıp sonra o arrayı kullanabılırsınız veya for ile her text satırını alıp her alındıgı anda kullanabılırsınız, ben sorunuzda yapamadıgınız kısmı anlamadım.

işlem şöyle olmalı.float iki dizi elemanlarını write modda txt dosyasına yazdırmalıyız.ondan sonra ordan okuyup işlemler yapmalıyım.txt e yazdırdım orda problem yok zaten.ancak fscanf ile verileri okumaya çalışırken problem oluyor.okuduğum veriyi consol ekranına yazdırdığımda anlamsız değerler görüyorum.

ekran goruntusu ve kodları at yorum olarak, ve https://stackoverflow.com/ buraya da sorabilirsin, ben yararını görmüştüm, c ve pythonla ilgili iyi cevaplar almıştım.

oraya yuva yaptım zaten cevap bekliyorum şuan :)

https://stackoverflow.com/questions/56316786/how-can-i-get-the-values-in-txt





1 cevap

2 beğenilme 0 beğenilmeme

int i ; float d3[] = {0,0,0,0};
float d1[] = {1.0,2.0,3.0,4.0};//dosyaya yazılacak dizi
float d2[] = {1.5,2.1,3.1,4.1};//dosyaya yazılacak dizi
FILE *dosya;
dosya=fopen("test.txt","w");
for(i=0;i<4;i++)//dizi elemanlarını dosyaya yazdırma döngüsü.
{ fprintf(dosya,"%d %f %f \n",i,d1[i],d2[i]);//dosyaya yazma komutu } fclose(dosya);
dosya=fopen("test.txt","r");
i=0;
while(!feof(dosya)) //feof(): dosya sonu geldiğinde
{
fscanf(dosya," %f %f %f ",&d3[i],&d1[i],&d2[i]);//dosyadan dizi değerlerini okuma komutu
printf("%f %f \n",d1[i],d2[i]);
i++;
}

 

(159 puan) tarafından 
20,279 soru
21,810 cevap
73,492 yorum
2,475,729 kullanıcı