Menu
Coddy logo textTech

Özet: Öğrenci Verisi Struct'ı

Coddy'nin C Journey'sinin Logic & Flow bölümünün bir parçası — ders 43 / 63.

challenge icon

Görev

Kolay

Bir öğrenci yönetim sistemi ile struct kullanımının tam iş akışını gösteren bir C programı oluşturun. Programınız şunları yapmalıdır:

  1. Aşağıdaki üyelere sahip Student adında bir struct tanımlayın:
    • Öğrencinin kimlik numarasını saklamak için bir tam sayı id
    • Öğrencinin notunu saklamak için bir ondalıklı sayı grade
  2. Ana fonksiyonda, student1 adında bir Student değişkeni oluşturun
  3. scanf kullanarak öğrencinin kimliğini ve notunu girdiden okuyun:
    • ID için bir tam sayı okuyun ve bunu student1.id içinde saklayın
    • Not için bir ondalıklı sayı okuyun ve bunu student1.grade içinde saklayın
  4. Girdiyi okuduktan sonra aşağıdaki doğrulama ve hesaplamaları gerçekleştirin:
    • Eğer not 100.0'dan büyükse, 100.0 olarak ayarlayın
    • Eğer not 0.0'dan küçükse, 0.0 olarak ayarlayın
    • Mevcut nota (doğrulamadan sonra) 5.0 ekleyerek bir bonus notu hesaplayın
    • Eğer bonus notu 100.0'ı aşarsa, bonus notunu 100.0 olarak ayarlayın
  5. Öğrenci bilgilerini tam olarak şu formatta yazdırın:
    • Student Information:
    • ID: [id]
    • Original Grade: [grade]
    • Bonus Grade: [bonus_grade]
    • Grade Status: [status]
  6. Not durumu şu şekilde belirlenmelidir:
    • Eğer orijinal not 90.0 veya üzerindeyse: Excellent
    • Eğer orijinal not 80.0 ile 89.9 arasındaysa: Good
    • Eğer orijinal not 70.0 ile 79.9 arasındaysa: Average
    • Eğer orijinal not 70.0'ın altındaysa: Needs Improvement

Bu meydan okuma; struct tanımı, değişken oluşturma, nokta operatörünü kullanarak üye erişimi, scanf ile girdi işleme ve veri doğrulama ile işleme için koşullu mantık anlayışınızı test eder. Pratik bir senaryoda struct'larla çalışmanın tam iş akışını uygulayacaksınız.

Kendin dene

#include <stdio.h>

// TODO: Burada Student yapısını (struct) tanımlayın

int main() {
    // TODO: student1 adında bir Student değişkeni oluşturun
    
    // Girdiyi oku
    int id;
    float grade;
    scanf("%d", &id);
    scanf("%f", &grade);
    
    // TODO: Girdi değerlerini yapı (struct) üyelerine kaydedin
    
    // TODO: Not doğrulama ve bonus hesaplamasını uygulayın
    
    // TODO: Not durumunu belirleyin
    
    // Sonuçları yazdır
    printf("Student Information:\n");
    printf("ID: %d\n", /* TODO: öğrenci ID'sini yazdır */);
    printf("Original Grade: %.1f\n", /* TODO: orijinal notu yazdır */);
    printf("Bonus Grade: %.1f\n", /* TODO: bonus notu yazdır */);
    printf("Grade Status: %s\n", /* TODO: not durumunu yazdır */);
    
    return 0;
}

Logic & Flow bölümündeki tüm dersler