Özet - Yapılar
- C kursu
- Başlangıç
- Ders 99/116
- 5 dk
Struct, typedef ve struct dizisini birleştirerek bir öğrenci veritabanı yazarsın.
Özet - Yapılar
Bu grupta yapıların temellerini öğrendin. struct farklı türleri birleştirir; . ile üye erişilir. typedef kısa ad verir; struct dizisi birden fazla kaydı tutar; iç içe struct karmaşık modeller kurar.
struct Point { int x; int y; };
typedef struct { int id; int grade; } Student;
struct Student students[2];
r.topleft.xBu kavramlar C'deki veri modellemenin temelidir. Yapılar olmadan gerçek projeleri yazmak çok zordur. Şimdi tüm bu kavramları birleştiren bir ödev yapacaksın.
Uygulama İki öğrencinin not ortalaması
struct Student tanımla (int id, int grade). İki öğrencili bir dizi oluştur: {{1, 85}, {2, 90}}. Bir for döngüsü ile notları topla; printf ile toplamı yazdır.
Başlangıç kodu
#include <stdio.h>
/* struct Student tanımla (int id, int grade) */
int main(void) {
/* iki öğrencili bir dizi tanımla; for ile notları topla; printf ile yazdır */
return 0;
}Örnek çözüm
struct Student { int id; int grade; };
struct Student students[2] = {{1, 85}, {2, 90}};
int total = 0;
for (int i = 0; i < 2; i++) {
total += students[i].grade;
}
printf("%d\n", total);Beklenen çıktı
175
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Kavram ve kullanım eşleştir
| Kavram | Anlamı |
|---|---|
struct |
Veri toplar |
. |
Üye erişimi |
typedef |
Kısa ad verir |
struct[3] |
Üç elemanlı dizi |
2 typedef struct tanımından sonra değişken nasıl tanımlanır?
- struct Point p;
- typedef Point p;
- new Point()
- Point p; Doğru cevap
Açıklama: typedef sonrası yalnızca Point p; yazılır.
3 Boşluğu doldur: dizi elemanı
printf("%d
", students[0]____);
printf("%d
", students[0].grade);
Açıklama: students[0].grade ile ilk öğrencinin notu alınır.