Model tasarımı
- C kursu
- Orta seviye
- Ders 65/116
- 6 dk
Book ve Member struct'larının iskeletini tasarlarsın.
Proje: Kütüphane uygulaması
Bu beş derslik projede bir kütüphane uygulaması yapacaksın. Her ders bir parça ekler; son derste menüyle çalışan bir program elde edersin. Kitap ve üye modelleri, kütüphane koleksiyonu, ödünç verme, arama ve menü adımlarını sırayla kuracaksın.
Önceki gruplardaki struct, fonksiyon işaretçisi ve dize bilgisini kullanacaksın. Bu ilk derste Book ve Member struct'larının iskeletini tasarlayacaksın. Her dersin başlangıç kodu önceki dersin çözümünü içerir; böylece kod birikimli büyür.
Book ve Member struct'ları
Bir struct, ilgili verileri bir araya getirir. Book için başlık (char title[64]), yıl (int year) ve ödünç durumu (int borrowed) alanları yeterlidir. Member için isim ve kimlik benzer biçimde tanımlanır.
Örnek: typedef struct { char title[64]; int year; int borrowed; } Book;. typedef ile struct Book yerine doğrudan Book yazabilirsin. Bu, kodun okunurluğunu artırır. Kitap için 64 baytlık başlık çoğu kitap adını taşır; ödünç durumu 0 (rafta) ya da 1 (ödünçte) olarak çalışır.
Uygulama Book ve Member struct'larını yaz
typedef struct { char title[64]; int year; int borrowed; } Book; ve typedef struct { char name[64]; int id; } Member; yaz. void print_book(Book *b) fonksiyonu yaz; içinde printf("Book: %s (%d)\n", b->title, b->year); olsun. main içine Book b = {"C Tutorial", 2024, 0}; ve print_book(&b); ekle. <stdio.h> ve <string.h> başlıklarını ekle.
Başlangıç kodu
#include <stdio.h>
#include <string.h>
// Book struct'ını tanımla (title, year, borrowed)
// Member struct'ını tanımla (name, id)
// print_book fonksiyonunu yaz
int main(void) {
// Bir Book tanımla ve print_book ile yazdır
return 0;
}Örnek çözüm
#include <stdio.h>
#include <string.h>
typedef struct {
char title[64];
int year;
int borrowed;
} Book;
typedef struct {
char name[64];
int id;
} Member;
void print_book(Book *b) {
printf("Book: %s (%d)\n", b->title, b->year);
}
int main(void) {
Book b = {"C Tutorial", 2024, 0};
print_book(&b);
return 0;
}Beklenen çıktı
Book: C Tutorial (2024)
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Book struct'ında hangi alan ödünç durumunu tutar?
- int year
- char title[64]
- int borrowed Doğru cevap
- char author[32]
Açıklama: borrowed alanı 0 ya da 1 ile ödünç durumu tutar.
2 Book struct'ını tamamla
typedef struct {
char title[64];
int year;
____ borrowed;
} Book;
typedef struct {
char title[64];
int year;
int borrowed;
} Book;
Açıklama: int borrowed; 0 ya da 1 taşır.
3 Alanları amacına eşle
| Kavram | Anlamı |
|---|---|
title[64] |
Kitap adı |
year |
Basım yılı |
borrowed |
Ödünç durumu |
id |
Üye kimliği |