Diziler ve döngüler
- C kursu
- Başlangıç
- Ders 57/116
- 5 dk
for ile dizinin üzerinde gezinmeyi öğrenirsin.
Diziler ve döngüler
Bir dizinin tüm elemanlarını yazdırmak için for döngüsü kullanılır. Sayaç, dizi indeksi olarak iş görür.
int scores[5] = {85, 92, 78, 90, 88};
for (int i = 0; i < 5; i++) {
printf("%d\n", scores[i]);
}Burada i 0'dan 4'e kadar gider ve scores[i] ile her elemana sırayla erişilir. Döngü sınırı i < 5 olmalı; i <= 5 yazarsan taşma olur. sizeof deyimiyle sınırı otomatik hesaplamak daha güvenlidir.
Toplam hesaplama
Döngü ile dizinin tüm elemanlarını toplayabilirsin. Bu, ortalama, en büyük, en küçük gibi hesaplar için temeldir.
int scores[5] = {85, 92, 78, 90, 88};
int sum = 0;
for (int i = 0; i < 5; i++) {
sum += scores[i];
}
printf("Toplam: %d\n", sum); // 433Burada sum başlangıçta 0'dır; her yinelemede bir eleman eklenir. Döngü bitince sum 433 olur. Ortalama için sum / 5 yaparsın.
Uygulama Diziyi döngüyle yazdır
Bir C programı yaz. int scores[5] = {85, 92, 78, 90, 88}; tanımla. for (int i = 0; i < 5; i++) döngüsü ile her elemanı printf("%d\n", scores[i]); ile yazdır. #include <stdio.h> başta olsun.
Başlangıç kodu
#include <stdio.h>
int main(void) {
// scores tanımla, for ile yazdır
return 0;
}Örnek çözüm
#include <stdio.h>
int main(void) {
int scores[5] = {85, 92, 78, 90, 88};
for (int i = 0; i < 5; i++) {
printf("%d\n", scores[i]);
}
return 0;
}Beklenen çıktı
85 92 78 90 88
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Döngü koşulunu tamamla
for (int i = 0; i ____ 5; i++) {
printf("%d", scores[i]);
}
for (int i = 0; i < 5; i++) {
printf("%d", scores[i]);
}
Açıklama: i < 5 ile beş eleman güvenle gezilir.
2 Döngü ve dizi eşleştir
| Kavram | Anlamı |
|---|---|
i = 0 |
Başlangıç |
i < n |
Koşul |
i++ |
Artış |
scores[i] |
Eleman |
3 sum += scores[i] ne yapar?
for (int i = 0; i < 5; i++) {
sum += scores[i];
}- sum'ı sıfırlar
- sum'a scores[i] ekler Doğru cevap
- scores[i]'yi azaltır
- Döngüyü durdurur
Açıklama: sum += scores[i] sum'a elemanı ekler.