Bu makalede, size C programlama diliyle ilgili kodlar ve örnekler sunacağız. C dilinin, yazılım dünyasının temel taşlarından biri olduğunu söylemek yanlış olmaz. Bu nedenle, C programlama diliyle çalışmaya başlamadan önce temel bilgilere sahip olmanız önemlidir.
C dilinde yer alan farklı yapıları ve kodları anlamak, programlama becerilerinizi geliştirmenize yardımcı olacaktır. Bu makalede, döngüler, koşullu ifadeler ve diziler gibi önemli konuları ele alacağız. Her bir konuyla ilgili olarak size örnek kodlar sunacağız, böylece teorik bilgileri pratikte uygulayabileceksiniz.
Makalemizin ilerleyen bölümlerinde, for, while ve do while döngülerini nasıl kullanacağınızı örneklerle anlatacağız. Koşullu ifadeler konusunda ise if, else if ve switch-case ifadelerinin nasıl çalıştığını göstereceğiz. Ayrıca, 1 boyutlu ve 2 boyutlu dizilerin nasıl tanımlandığını ve kullanıldığını da örneklerle göstereceğiz.
Her bir konunun alt başlıklarında ayrıntılı olarak açıklama yapacağız ve örnek kodlar sunacağız. Böylece, C programlama dilinin sunduğu olanakları daha iyi anlayabilir ve kendi projelerinizi başarılı bir şekilde geliştirebilirsiniz.
Döngüler
=C programlama dilinde for, while ve do while döngüleri, tekrar eden işlemleri gerçekleştirmek için kullanılan kritik yapısal öğelerdir. Bu döngüler, bir dizi işlemi belirli bir koşula bağlı olarak tekrarlamak için kullanılır ve programın akışını kontrol etmek için oldukça önemlidir.
=For döngüsü, belirli bir şart sağlandığı sürece belirli bir kod bloğunu yürütmek için kullanılır. For döngüsünde genellikle sayaç değişkeni kullanılır ve her bir adımda bu değişkenin değeri artırılır. Bu sayede, belirli bir koşulun sağlanma durumuna kadar kod bloğu tekrar tekrar çalıştırılır.
=While döngüsü ise, belirli bir koşul sağlandığı sürece bir kod bloğunu tekrar tekrar çalıştırır. Bu döngüde, koşulun başlangıçta doğru olması durumunda kod bloğu çalışır ve koşul her adımda kontrol edilir. Koşul doğru olduğu sürece döngü devam eder.
=Do while döngüsü ise while döngüsüne benzer olsa da, koşulun kontrolünün döngü sonunda yapılması dışında önemli bir fark vardır. Do while döngüsünde, kod bloğu en az bir kez çalıştırılır ve ardından koşul kontrol edilir. Koşul doğru olduğu sürece döngü devam eder.
=Döngülerin kullanımı programlama dilinde oldukça önemlidir. Doğru bir şekilde kullanıldığında, işlemlerin tekrarlanması ve program akışının kontrolü için güçlü bir araç haline gelirler. Bu nedenle, for, while ve do while döngülerini anlamak ve doğru bir şekilde kullanmak, C programlama dilinde başarılı olmanın temel adımlarından biridir.
Koşullu İfadeler
Koşullu ifadeler, programların belirli durumları değerlendirmesine ve buna göre farklı işlemler yapmasına olanak tanır. C programlama dilinde en sık kullanılan koşullu ifadeler if, else if ve switch-case’dir. Bu ifadeler sayesinde programlar farklı senaryolara göre çalışabilir ve belirli koşullara bağlı olarak çeşitli işlemler gerçekleştirebilir.
İlk olarak, “if” koşullu ifadesine bakalım. If ifadesi, bir koşulu kontrol eder ve koşulun doğru olması durumunda belirli bir işlem yapar. Eğer koşul yanlış ise, program if bloğunu atlar ve diğer kodları çalıştırmaya devam eder.
Kod | Açıklama |
---|---|
|
Koşul doğruysa, belirtilen kod bloğu çalışır. |
Else if ifadesi, programın birden fazla koşulu kontrol etmesini sağlar. Bir koşul doğru ise, kod bu koşula ait olan bloğu çalıştırır ve diğer else if bloklarını atlar. Eğer hiçbir koşul doğru değilse, else bloğu çalışır.
if (koşul1) { // Koşul1 doğru ise buradaki kod çalışır} else if (koşul2) { // Koşul2 doğru ise buradaki kod çalışır} else { // Hiçbir koşul doğru değilse buradaki kod çalışır}
Switch-case ifadesi, bir değişkenin değerini kontrol eder ve hangi duruma uyduğuna bağlı olarak belirli bir kod bloğunu çalıştırır. Switch ifadesi içindeki değişkene göre belirli bir durum seçilir ve eşleşen case bloğu çalıştırılır. Eğer hiçbir durum eşleşmezse, default bloğu çalıştırılır.
switch (değişken) { case değer1: // Değer1 için buradaki kod çalışır break; case değer2: // Değer2 için buradaki kod çalışır break; default: // Hiçbir durum eşleşmezse buradaki kod çalışır}
Koşullu ifadeler, programlara esneklik sağlar ve belirli durumlara göre farklı işlemler yapılmasına olanak tanır. Bu sayede programlar, kullanıcının girdilerine veya diğer değişkenlere bağlı olarak dinamik bir şekilde çalışabilir.
IF-ELSE
=İki farklı koşulu kontrol etmek için if-else ifadeleri kullanılabilir. Bu alt başlıkta, if-else ifadelerinin nasıl kullanıldığı örneklendirilecektir.
C programlamada if-else ifadeleri, bir koşulun doğru ya da yanlış olduğunu kontrol etmek için kullanılır. İlk olarak, if ifadesiyle belirtilen koşulun doğru olup olmadığı kontrol edilir. Eğer koşul doğruysa, if bloğunda belirtilen kodlar çalıştırılır. Eğer koşul yanlışsa, else bloğundaki kodlar çalışır.
Bu sayede, program farklı durumlara göre farklı kodlar çalıştırabilir ve doğru sonuçları üretebilir. Örneğin, kullanıcıdan alınan bir sayının pozitif, negatif veya sıfır olduğunu kontrol etmek için if-else ifadesi kullanılabilir. Eğer sayı pozitifse, ekrana “Sayı pozitif” yazdırılır. Eğer sayı negatifse, ekrana “Sayı negatif” yazdırılır. Eğer sayı sıfırsa, ekrana “Sayı sıfır” yazdırılır.
İf-else ifadeleri aynı zamanda birbirine bağlı koşulları kontrol etmek için de kullanılabilir. Birden fazla koşulun doğru ya da yanlış olduğunu kontrol etmek için else if ifadesi kullanılır. Eğer ilk koşul yanlışsa, else if ifadesiyle belirtilen ikinci koşul kontrol edilir. Eğer ikinci koşul doğruysa, ilgili bloktaki kodlar çalışır. Bu süreç istenilen sayıda koşul için tekrarlanabilir.
Üç Koşulu Kontrol Etmek
=C dilinde, üç farklı koşulu aynı anda kontrol etmek için nested if-else ifadeleri kullanılabilir. Bu örnekle, bu konu daha detaylı açıklanacak.
C programlama dilinde, nested if-else ifadeleri kullanarak üç farklı koşulu aynı anda kontrol etmek mümkündür. Bu ifadeler, programın belirli şartlara göre farklı işlemler gerçekleştirmesini sağlar. Eğer bir koşul doğru ise, bir blok kod çalıştırılır, aksi takdirde başka bir koşul kontrol edilir ve bu şekilde devam eder.
Örneğin, bir durum kontrol ediliyor ve bu durumun içinde başka bir durum kontrol edilmesi gerekiyorsa, nested if-else ifadeleri kullanılır. İlk if ifadesi doğruysa, içerisindeki koşul çalıştırılır ve sonuç elde edilir. Eğer ilk if ifadesi yanlışsa, else if ifadesi kontrol edilir ve gerekli koşullara göre farklı işlemler yapılır.
Aşağıdaki örnekte, kullanıcının yaşına ve cinsiyetine bağlı olarak farklı mesajlar gösteren bir program bulunmaktadır:
“`c#include
Yukarıdaki örnek, kullanıcının yaşını ve cinsiyetini kontrol ederek farklı mesajlar yazdıran bir programı göstermektedir. Eğer kullanıcının cinsiyeti ‘E’ ise ve yaş 18’den büyük ise “Erkek yetişkinsiniz” mesajı yazdırılır, aksi takdirde “Erkek çocuksunuz” mesajı görüntülenir. Eğer kullanıcının cinsiyeti ‘K’ ise ve yaş 18’den büyük ise “Kadın yetişkinsiniz” mesajı yazdırılır, aksi takdirde “Kadın çocuksunuz” mesajı görüntülenir. Ayrıca, kullanıcının cinsiyeti ne olursa olsun geçerli bir cinsiyet girmediği durumda “Geçerli bir cinsiyet giriniz” mesajı çıktı olarak verilir.
İki Koşulu Kontrol Etmek
=C dilinde, iki farklı koşulu kontrol etmek için if-else ifadeleri kullanılabilmektedir. Bu alt başlıkta, if-else ifadelerinin nasıl kullanıldığı örneklerle açıklanacaktır.
İki koşulu kontrol etmek için if-else ifadeleri oldukça kullanışlıdır. Bu yapı sayesinde programımızı birden fazla koşula göre kontrol edebilme imkanı sağlanır. İlk olarak, if anahtar kelimesiyle bir koşul belirleriz. Eğer bu koşul doğruysa, if bloğundaki kodlar çalıştırılır. Eğer koşul yanlışsa, else anahtar kelimesiyle belirtilen bloktaki kodlar çalıştırılır.
Bununla birlikte, iki farklı koşulu kontrol etmek istediğimiz durumlarda, else if ifadesini kullanırız. Bu sayede programımızdaki ikinci bir koşulu kontrol edebiliriz. Eğer ilk koşul yanlışsa, ikinci koşula bakılır ve eğer ikinci koşul doğruysa, else if bloğundaki kodlar çalıştırılır. Eğer ikinci koşul da yanlışsa, else bloğundaki kodlar çalıştırılır.
İki koşulu kontrol etmek için if-else ifadeleri, genellikle bir durumun birden fazla sonucu olabileceği durumlarda kullanılır. Örneğin, kullanıcının girdiği sayının pozitif, negatif veya sıfır olduğunu kontrol etmek istediğimizde if-else ifadeleri kullanırız. Bu sayede kullanıcının girdiği sayıya göre farklı çıktılar verebiliriz.
Aşağıda, iki koşulu kontrol etmek için kullanılabilecek bir örneği görebilirsiniz:
#includeint main() { int sayi; printf("Bir sayi girin: "); scanf("%d", &sayi); if(sayi > 0) { printf("Girdiginiz sayi pozitiftir."); } else if(sayi < 0) { printf("Girdiginiz sayi negatiftir."); } else { printf("Girdiginiz sayi sifirdir."); } return 0;}
Yukarıdaki örnekte, kullanıcının girdiği sayıya göre programımız farklı çıktılar vermektedir. Eğer kullanıcının girdiği sayı pozitifse, "Girdiginiz sayi pozitiftir." çıktısı verilir. Eğer sayı negatif ise, "Girdiginiz sayi negatiftir." çıktısı verilir. Eğer sayı sıfır ise, "Girdiginiz sayi sifirdir." çıktısı verilir.
Switch-Case
=C programlama dilinde switch-case ifadeleri, birden fazla koşulu kontrol etmek için kullanılır. Switch-case ifadesi, bir değişkenin değerine göre farklı işlemleri gerçekleştirmemizi sağlar. Bu durumda, değişkenin farklı değerlerine göre farklı kod blokları çalıştırılabilir.
Switch-case ifadesi genellikle koşullu ifadelerde kullanılan if-else ifadesine alternatif olarak tercih edilir. Birden fazla if-else ifadesi yerine, switch-case ifadesi kullanarak kodu daha sade ve okunabilir hale getirebiliriz.
Switch-case ifadesi şu şekilde kullanılır:
switch(değişken) { case değer1: // Değer 1 için yapılacak işlemler break; case değer2: // Değer 2 için yapılacak işlemler break; case değer3: // Değer 3 için yapılacak işlemler break; // Daha fazla case statement default: // Yukarıdaki değerlerden hiçbiri için // geçerli olan işlemler}
Switch-case ifadesinde, belirli bir değişkenin değerine bağlı olarak farklı kod blokları çalıştırılır. Değerler arasında karşılaştırma yapılır ve uygun olan blok çalıştırılır. Eğer hiçbir değer uygun değilse, default bloğu çalıştırılır.
- Switch-case ifadesi içindeki her case bloğunun sonunda break ifadesi kullanmak önemlidir. Bu şekilde, koşullar sırasıyla kontrol edilir ve uygun blok çalıştırılır. Break ifadesi olmadan devam edilirse, koşula uymayan diğer bloklar da çalıştırılabilir.
- Default bloğu, yukarıdaki case bloklarına uygun bir değer bulunamadığında çalıştırılır. Default bloğu kullanmak zorunlu değildir. Eğer default bloğu bulunmazsa, hiçbir case bloğuna uyan değer yoksa hiçbir işlem gerçekleştirilmez.
Bu örneklerle switch-case ifadesinin kullanımını daha iyi anlayabiliriz. Aşağıda, farklı durumlarda switch-case ifadesinin nasıl kullanıldığına dair örnekler bulunmaktadır.
Değişken Değeri | Switch-Case İfadesi |
---|---|
1 | Kod bloğu 1 |
2 | Kod bloğu 2 |
3 | Kod bloğu 3 |
4 | Kod bloğu 4 |
5 | Default Kod bloğu |
Bu örnekte, değişkenin değerine göre farklı kod blokları çalıştırılır. Değişkenin değeri 1 ise "Kod bloğu 1" çalıştırılır, 2 ise "Kod bloğu 2" çalıştırılır, 3 ise "Kod bloğu 3" çalıştırılır, 4 ise "Kod bloğu 4" çalıştırılır ve 5 ise "Default Kod bloğu" çalıştırılır.
Diziler
=C programlama diliyle çalışırken dizilerin nasıl tanımlanıp kullanıldığına dair örnek kodlar paylaşılacaktır.
Diziler, C programlama dilinde işleri kolaylaştıran ve verileri düzenli bir şekilde saklamamıza olanak sağlayan yapılarıdır. Çeşitli veri tiplerinden oluşan elemanları aynı isim altında gruplamamızı sağlarlar. C dilinde birçok veri elemanını tek bir değişkende tanımlama ve kullanma imkanı sunarlar.
Diziler, C dilinde tek boyutlu ve çok boyutlu olmak üzere iki farklı şekilde kullanılabilir. Tek boyutlu diziler, verileri ardışık olarak saklamamızı sağlar ve erişimi kolaylaştırır. Örneğin, bir dizi içerisine sayılar ekleyebilir ve bu sayılara erişmek için dizi içerisindeki indisleri kullanabiliriz. Diziler, bir dizinin boyutunu en başta belirtmemizi gerektiren, sabit boyutlu yapılar olarak kullanılırlar.
Çok boyutlu diziler ise, matris benzeri yapılar oluşturmamızı sağlar. Matrislerde olduğu gibi iki veya daha fazla boyuta sahip olabilirler. Örneğin, bir matris içerisindeki elemanları satır ve sütun indisleriyle erişebilir ve bu şekilde işlemler gerçekleştirebiliriz.
Aşağıda, C programlama dilindeki dizilerin nasıl tanımlanıp kullanıldığını gösteren örnek kodlara yer vereceğiz:
#include int main() { // Tek boyutlu dizi tanımlama ve kullanma int tekBoyutluDizi[5] = {1, 2, 3, 4, 5}; // İkinci elemana erişme printf("2. eleman: %d\n", tekBoyutluDizi[1]); // Çok boyutlu dizi tanımlama ve kullanma int cokBoyutluDizi[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; // İlk satırın ikinci elemanına erişme printf("1. satır, 2. eleman: %d\n", cokBoyutluDizi[0][1]); return 0;}
Bu örnek kodlarda, yerel bir değişken olarak tek boyutlu ve çok boyutlu diziler tanımlanmıştır. Dizilere değer ataması yapılmış ve ardından bu değerlere erişim sağlanmıştır. Yazılan örnek kodları inceleyerek, C programlama dilinde dizilerin nasıl tanımlanıp kullanıldığını daha iyi anlayabilirsiniz.
1 Boyutlu Diziler
=C dilinde tek boyutlu diziler, verilerin saklandığı ve erişilebildiği kullanışlı bir yapıdır. Bu alt başlık, 1 boyutlu dizilerin tanımlanması ve kullanımına odaklanacaktır.
Tek boyutlu diziler, C programlama dilinde çok sık kullanılan bir veri yapısıdır. Verilerin saklanması ve erişilebilmesi için kullanılırlar. Bu diziler, bir dizi adıyla ve her bir elemanın değeriyle tanımlanır. Dizi elemanları, sırasıyla dizinin indisleriyle erişilebilir.
Bir tek boyutlu diziyi tanımlarken, önce veri türünü belirleriz. Ardından, dizinin adını ve eleman sayısını belirtiriz. Örneğin, "int numbers[5];" şeklinde bir tanımlama, "numbers" adında bir dizi oluşturur ve bu dizide 5 tane integer tipinde eleman bulunur.
Dizi elemanlarına erişmek için, dizi adının yanına köşeli parantez içinde indis numarasını yazmamız yeterlidir. Örneğin, "numbers[0]" ifadesi, "numbers" dizisinin ilk elemanına erişmek için kullanılır.
1 boyutlu diziler, verilerin gruplandırılması ve işlenmesi için oldukça kullanışlı bir yapıdır. Örneğin, bir öğrenci sınıfından alınan notları bir dizide saklayabilir ve bu notları toplayıp ortalamasını bulmak için diziyi kullanabiliriz.
Bu alt başlıkta, C dilinde tek boyutlu dizilerin nasıl tanımlanacağı ve kullanılacağına dair örnekler verilecektir. Bu sayede, bu önemli konuyu daha iyi anlama ve pratik yapma imkanı bulabileceksiniz.
2 Boyutlu Diziler
=C dilinde iki boyutlu diziler matris benzeri bir yapıda kullanılır. Bu alt başlık, 2 boyutlu dizilerin nasıl tanımlanıp kullanıldığını örneklerle anlatacaktır.
C programlama dilinde, iki boyutlu diziler matris gibi kullanılır. İki boyutlu diziler, satır ve sütunlardan oluşur ve elemanlarına erişmek için iki indeks kullanılır. Örneğin, bir 3x3 matrisi temsil etmek için aşağıdaki gibi bir dizi tanımlanabilir:
int matris[3][3];
Yukarıdaki örnekte, "matris" adında bir 3x3'lük bir dizi tanımlanmıştır. Bu dizi, 3 satır ve 3 sütundan oluşur.
İki boyutlu dizilere değer atanabilir ve bu değerlere erişilebilir. Değer atama işlemi, iki indeksi kullanarak yapılır. Örneğin:
matris[0][0] = 1;matris[0][1] = 2;matris[0][2] = 3;matris[1][0] = 4;matris[1][1] = 5;matris[1][2] = 6;matris[2][0] = 7;matris[2][1] = 8;matris[2][2] = 9;
Yukarıdaki örnekte, matrisin elemanlarına sırasıyla değerler atanmıştır. Değerlere erişmek için iki indeks kullanılır. Örneğin, matrisin (0,0) indeksindeki değeri almak için matris[0][0] kullanılır ve bu ifade 1'e eşittir.
İki boyutlu diziler ayrıca döngülerle kullanılabilir. Örneğin, bir 3x3 matrisin tüm elemanlarını ekrana yazdırmak için aşağıdaki gibi bir döngü kullanılabilir:
for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("%d ", matris[i][j]); } printf("\n");}
Yukarıdaki örnekte, iç içe geçmiş iki for döngüsü kullanılarak matrisin tüm elemanları ekrana yazdırılır. İlk döngü satırları, ikinci döngü ise sütunları temsil eder.
Kısacası, iki boyutlu diziler C programlama dilinde matris benzeri bir yapıda kullanılır. İki boyutlu dizilerin tanımlanması, değer atanması ve erişilmesi oldukça basittir. Döngülerle de rahatlıkla kullanılabilirler.