☰ Dersleri Göster

Structs (Yapılar)

Bu derste struct'ların nasıl kullanıldığını öğrenceksiniz.

Kursa 27.99 TL'ye kayıt olmak için TIKLAYINIZ.

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <string.h>

 struct ogrenci{
    char ad[30];
    char soyadi[30];
    char okul[30];
    char bolum[30];
    int okulNumarasi;
    int sinif;
    }ogr1,ogr2;

int main()
{
    setlocale(LC_ALL,"Turkish");

    strcpy(ogr1.ad,"Kaan");
    strcpy(ogr1.soyadi,"Academy");
    strcpy(ogr1.okul,"Galatasaray Üniversitesi");
    strcpy(ogr1.bolum,"Bilgisayar Mühendisliği");
    ogr1.okulNumarasi = 18401604;
    ogr1.sinif = 1;

    printf("%s %s %s %s %d %d\n",ogr1.ad,ogr1.soyadi,ogr1.okul,ogr1.bolum,ogr1.okulNumarasi,ogr1.sinif);

    strcpy(ogr2.ad,"Fatih");
    strcpy(ogr2.soyadi,"Academy");
    strcpy(ogr2.okul,"Galatasaray Üniversitesi");
    strcpy(ogr2.bolum,"Bilgisayar Mühendisliği");
    ogr2.okulNumarasi = 18401605;
    ogr2.sinif = 2;

    printf("%s %s %s %s %d %d",ogr2.ad,ogr2.soyadi,ogr2.okul,ogr2.bolum,ogr2.okulNumarasi,ogr2.sinif);

    return 0;
}

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>

struct kitap{

char ad[50];
char yazarIsmi[50];
int basimYili;
float fiyat;
};

/*romanKitaplari[2] = { {"Dokuzuncu Hariciye Koğuşu","Peyami Safa",1980,23.5},
{"Suç ve Ceza","Dostoyevski",1960,25.75}   };*/


/*kitap1 = {"Dokuzuncu Hariciye Koğuşu","Peyami Safa",1980,23.5},
kitap2 = {"Suç ve Ceza","Dostoyevski",1960,25.75};*/

int main()
{
    setlocale(LC_ALL,"Turkish");
   /* printf("%s %s %d %f\n",kitap1.ad,kitap1.yazarIsmi,kitap1.basimYili,kitap1.fiyat);
    printf("%s %s %d %f\n",kitap2.ad,kitap2.yazarIsmi,kitap2.basimYili,kitap2.fiyat);
    float toplamFiyat = kitap1.fiyat + kitap2.fiyat;
    printf("İki kitabın toplam fiyatı %f",toplamFiyat);*/

   /* float toplamFiyat=0;

    for(int i=0;i<2;i++){
        toplamFiyat += romanKitaplari[i].fiyat;
    }
    printf("Toplam fiyat: %.2f",toplamFiyat);*/


    struct kitap romanKitaplari[2] = { {"Dokuzuncu Hariciye Koğuşu","Peyami Safa",1980,23.5},
{"Suç ve Ceza","Dostoyevski",1960,25.75}   };

    float toplamFiyat=0;

    for(int i=0;i<2;i++){
        printf("%d. kitabın ismi: %s Yazarı: %s Basım Yılı: %d Fiyatı: %f \n",i+1,romanKitaplari[i].ad,romanKitaplari[i].yazarIsmi,romanKitaplari[i].basimYili,romanKitaplari[i].fiyat);
        toplamFiyat += romanKitaplari[i].fiyat;
    }
    printf("Toplam fiyat: %.2f",toplamFiyat);

    return 0;
}

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>

struct calisanlar{

char ad[50];
char soyadi[50];
char iseBaslangicTarihi[20];
float maas;
int primSayisi;
char cinsiyet;
};

void calisaninBilgileriniGoster(struct calisanlar eleman){
printf("%s %s %s %f %d %c",eleman.ad,eleman.soyadi,eleman.iseBaslangicTarihi,eleman.maas,eleman.primSayisi,eleman.cinsiyet);

}
int main()
{
    setlocale(LC_ALL,"Turkish");

    struct calisanlar calisan1;
    printf("Lütfen çalışanın bilgilerini giriniz...\n");
    scanf("%s %s %s %f %d %c",calisan1.ad,calisan1.soyadi,calisan1.iseBaslangicTarihi,&calisan1.maas,&calisan1.primSayisi,&calisan1.cinsiyet);

    struct calisanlar *calisan1Adres = &calisan1;

    printf("Çalışan Bilgileri:\n");
    calisaninBilgileriniGoster(calisan1);



    return 0;
}

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>


struct calisanBilgisi{
char makam[20];
char calistigiBirim[20];
float maas;
int calistigiSene;

};

struct calisanlar{
char ad[50];
char soyadi[50];
int yas;
struct calisanBilgisi bilgi;

};

void elemanBilgileriniGoster(struct calisanlar x){
 printf("%s %s %d %s %s %.2f %d\n",x.ad,x.soyadi,x.yas,x.bilgi.makam,x.bilgi.calistigiBirim,x.bilgi.maas,x.bilgi.calistigiSene);

}
int main()
{
    setlocale(LC_ALL,"Turkish");

    struct calisanlar calisanlarinTamami[3];
    int eklenecekElemanSayisi;

    printf("Lütfen eklemek istediğiniz eleman sayısını giriniz...\n");
    scanf("%d",&eklenecekElemanSayisi);
    for(int i=0;i<eklenecekElemanSayisi;i++){
    printf("%d. elemanın bilgilerini giriniz...\n",i+1);
    scanf("%s %s %d %s %s %f %d",calisanlarinTamami[i].ad,calisanlarinTamami[i].soyadi,&calisanlarinTamami[i].yas,calisanlarinTamami[i].bilgi.makam,calisanlarinTamami[i].bilgi.calistigiBirim,&calisanlarinTamami[i].bilgi.maas,&calisanlarinTamami[i].bilgi.calistigiSene);

}

    printf("Kaydedilen eleman bilgileri...\n");

    for(int i=0;i<eklenecekElemanSayisi;i++){
        elemanBilgileriniGoster(calisanlarinTamami[i]);
    }



    return 0;
}

 

Typedef Kullanımı

 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//type definition
typedef struct Ogrenciler{

    int okulNo;
    char isim[15];
    char soyIsim[15];
    int sinif;
    char sube;
    double genelOrtalama;
}Ogrenci;

int main()
{
    Ogrenci ogrenci1;
    Ogrenci ogrenci2;

    ogrenci1.okulNo=450;
    strcpy(ogrenci1.isim,"Fatih Kaan");
    strcpy(ogrenci1.soyIsim,"Acikgoz");
    ogrenci1.sinif=12;
    ogrenci1.sube='C';
    ogrenci1.genelOrtalama=85.4;

    printf("Lutfen ogrencinin numarasini ismini soyismini sinifini subesini ve genelortalamasini sirasiyla giriniz.\n");
    scanf("%d %s %s %d %c %lf",&ogrenci2.okulNo,ogrenci2.isim,ogrenci2.soyIsim,&ogrenci2.sinif,&ogrenci2.sube,&ogrenci2.genelOrtalama);


    printf("%d %s %s %d %c %.2lf \n",ogrenci1.okulNo,ogrenci1.isim,ogrenci1.soyIsim,ogrenci1.sinif,ogrenci1.sube,ogrenci1.genelOrtalama);
    printf("%d %s %s %d %c %.2lf \n",ogrenci2.okulNo,ogrenci2.isim,ogrenci2.soyIsim,ogrenci2.sinif,ogrenci2.sube,ogrenci2.genelOrtalama);




    return 0;
}