Sayfalar

Menü

9 Mart 2020 Pazartesi

C dilinde dat dosyaya bilgi kaydetme

C dilinde dat dosyaya bilgi kaydetme programı.
Struct ile yapı oluşturuyoruz.
Pointer ile hafıza alanı isaretliyoruz.

#include<stdio.h>

struct ogrenci{
 int yas;
 char isim[15];
 float vize, final;

};

 float ortalama(struct ogrenci *);
 void dosyaya_yazdir(struct ogrenci *);

int main(){
 struct ogrenci ogr[5];
 
 printf("ogrencinin alimi durdurmak icin yas = -1 girin\n");
 int s;
 for(s = 0; s < 5; s++){
 
  printf("\n\n%d.ogrencinin bilgilerini giriniz\n", s+1);
  printf("------------------------\n");

  printf("yas:");
  scanf("%d", &(ogr[s].yas));

  if(ogr[s].yas == -1)
   break;
  printf("isim:");
  scanf("%s", &(ogr[s].isim));

  printf("final:");
  scanf("%f", &(ogr[s].final));

  printf("vize:");
  scanf("%f", &(ogr[s].vize));
}

 printf("ogrencinin alimi tamamlandi!\n");
 
 dosyaya_yazdir(ogr);

 return 0;
}

void dosyay_yazdir(struct ogrenci *student){

 FILE *hedef_dosya;
 hedef_dosya = fopen("ogrenci.dat", "w+");

 int s;
 for(s = 0; s < 5; s++){
     if(student -> yas == -1)
  break;

 fprintf(hedef_dosya,"%d.ogrencinin bilgileri\n", s+1);
 fprintf(hedef_dosya,"-----------------------\n", s+1);
 fprintf(hedef_dosya,"isim: %s\n",student ->isim);
 fprintf(hedef_dosya,"yas: %d\n", student ->yas);
 fprintf(hedef_dosya,"Not ortalamasi: %.2f\n", ortalma(student));
 student ++;
}
fclose(hedef_dosya);
}

float ortalam(struct ogrenci *st){
 float sonuc;
 sonuc = st->vize*0.4 + st->final*0.6;
 return sonuc;
} 



Hiç yorum yok:

Yorum Gönder

Her yorum bilgidir. Araştırmaya devam...