Entelektüel Ayı
MB Üyesi
- Kayıt
- 21 Nisan 2017
- Mesajlar
- 5
- Tepkiler
- 0
- Yaş
- 27
- Üniv
- Selçuk
C proje ödevimde öğrenci not giriş sistemi yapmam gerekiyor, not görüntüleme kısmında bir sorunla karşılaştım;
Dosyadan struct ile veri okumak istiyorum fakat çalışmayı durdurdu hatası veriyor kodları denedim fscanf bölümünde sıkıntı var, dosyadan struct kullanarak nasıl veri okuyabilirim?
ek olarak;
Bir sonraki bölümde öğrencilerin notlarını girme/değiştirme işlemi yapmam gerekiyor. Aklımda dosyadan verileri alıp, matris diziye atayarak dizi üzerinde işlem yapıp, dosyayı sıfırladıktan sonra dosyaya yazdırma işlemi var. Yapmayı düşündüğüm bu işlemin dizi kullanmadan, dosya silip yeniden yazmadan daha kolay bir yöntemi vardır diye düşünüyorum.
Dosya işlemleri hakkında pek bilgi sahibi değilim internette fazla türkçe kaynak bulamadım, bulduğum kadarıyla bir şeyler yapmaya çalışıyorum.
Dosyadan struct ile veri okumak istiyorum fakat çalışmayı durdurdu hatası veriyor kodları denedim fscanf bölümünde sıkıntı var, dosyadan struct kullanarak nasıl veri okuyabilirim?
Kod:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
struct ogrenci{
int no;
char *ad;
int vize;
int final;
};
int main(){
FILE *dg = fopen("ogrenci.txt","r");
struct ogrenci a;
while (!feof(dg))
{
fscanf(dg,"%d %s %d %d",&a.no,a.ad,&a.vize,&a.final);
printf("%d %s %d %d",a.no,a.ad,a.vize,a.final);
}
return 0;
}
Bir sonraki bölümde öğrencilerin notlarını girme/değiştirme işlemi yapmam gerekiyor. Aklımda dosyadan verileri alıp, matris diziye atayarak dizi üzerinde işlem yapıp, dosyayı sıfırladıktan sonra dosyaya yazdırma işlemi var. Yapmayı düşündüğüm bu işlemin dizi kullanmadan, dosya silip yeniden yazmadan daha kolay bir yöntemi vardır diye düşünüyorum.
Dosya işlemleri hakkında pek bilgi sahibi değilim internette fazla türkçe kaynak bulamadım, bulduğum kadarıyla bir şeyler yapmaya çalışıyorum.