C oldukça eski bir programlama dilidir. C, 70'lerde geliştirildi, ancak yine de oldukça güçlü çünkü C düşük bir seviyede çalışıyor. C öğrenmek, sizi daha karmaşık programlama dilleriyle tanıştırmak için harika bir yoldur ve sahip olduğunuz bilgiler hemen hemen her programlama diline uygulanabilir ve uygulama geliştirmeyi anlamanıza yardımcı olur. C programlama dilini öğrenmeye başlamak için aşağıdaki 1. adıma bakın.
Adım
Bölüm 1/6: Hazırlık
Adım 1. C derleyicisini indirin ve kurun
C kodu, kodu makinenin anlayacağı sinyallere çeviren bir programla derlenmelidir. Derleyiciler genellikle ücretsizdir ve farklı işletim sistemleri için çeşitli derleyiciler mevcuttur.
- Windows için Microsoft Visual Studio Express veya mingw'yi deneyin.
- Mac için XCode, en iyi C derleyicilerinden biridir.
- Linux için gcc en popüler seçeneklerden biridir.
Adım 2. Programlamanın temellerini anlayın
C oldukça eski bir programlama dilidir ve çok güçlü olabilir. C, Unix işletim sistemleri için tasarlanmıştır, ancak hemen hemen tüm işletim sistemleri için geliştirilmiştir. C'nin modern versiyonu C++'dır.
Temel olarak C, işlevlerden oluşur ve bu işlevlerde verileri depolamak ve işlemek için değişkenleri, koşullu ifadeleri ve döngüleri kullanabilirsiniz
Adım 3. Temel kodu okuyun
Programlama dillerinin çeşitli yönlerinin nasıl çalıştığını öğrenmek ve programların nasıl çalıştığı hakkında fikir edinmek için aşağıdaki temel programlara bir göz atın.
Dahil etmek
int main() { printf("Merhaba Dünya!\n"); getchar(); 0 döndürür; }
- #include işlevi, program başlamadan önce kullanılır ve ihtiyacınız olan işlevselliğe sahip kitaplıkları yükler. Bu programda stdio.h, printf() ve getchar() fonksiyonlarını kullanmanıza izin verir.
- int main() işlevi, derleyiciye programın "main" adlı bir işlevi yürüttüğünü ve bittiğinde bir tamsayı döndüreceğini söyler. Tüm C programları "ana" işlevi yerine getirir.
- {}, içindeki tüm kodun işlevin bir parçası olduğunu belirtir. Bu programda, içindeki tüm kodlar "ana" fonksiyona dahil edilmiştir.
- printf() işlevi, içeriği tırnak içinde kullanıcının ekranına döndürür. Metnin doğru yazdırılması için tırnak işaretleri kullanılır. \n derleyiciye imleci yeni bir satıra taşımasını söyler.
- ; satırın sonunu işaretler. Neredeyse tüm C kodu satırları noktalı virgülle bitmelidir.
- getchar() komutu, derleyiciye devam etmeden önce klavye girişini beklemesini söyler. Bu yararlıdır çünkü birçok derleyici programı çalıştırır ve pencereyi hemen kapatır. Bu işlev, programın bir tuşa basılmadan önce tamamlanmasını engeller.
- 0 komutu, işlevin sonunu belirtir. "Main" işlevinin bir int işlevi olduğuna dikkat edin. Yani, program bittikten sonra "ana" bir tamsayı döndürmek zorundadır. Sıfır, programın doğru yürütüldüğünü gösterir; başka bir sayı, programın bir hatayla karşılaştığını gösterir.
Adım 4. Programı derlemeyi deneyin
Programı kod düzenleyicinize girin ve "*.c" dosyası olarak kaydedin. Oluştur veya Çalıştır düğmesine basarak derleyin.
Adım 5. Her zaman kodunuzu yorumlayın
Yorumlar derlenmeyen, ancak neler olduğunu açıklamanıza izin veren kod parçalarıdır. Yorumlar, kodunuzun işlevselliğini kendinize hatırlatmak ve kodunuzu görebilecek diğer geliştiricilere yardımcı olmak için yararlıdır.
- C dilinde kodu yorumlamak için yorumun başına /* ve yorumun sonuna */ koyun.
- En temel hariç tüm kod bölümlerini yorumlayın.
- Yorumlar, kodun belirli bölümlerini silmeden hariç tutmak için kullanılabilir. Programı hariç tutmak ve derlemek istediğiniz kodun açıklamasını kaldırın. Kodu iade etmek istiyorsanız, yorumunu kaldırın.
Bölüm 2/6: Değişkenleri Kullanma
Adım 1. Değişkenlerin işlevini anlayın
Değişkenler, programdaki hesaplamalardan veya kullanıcı girdilerinden veri depolamanıza izin verir. Değişkenler kullanılmadan önce tanımlanmalıdır ve aralarından seçim yapabileceğiniz çeşitli değişken türleri vardır.
Oldukça yaygın olarak kullanılan değişkenler int, char ve float'tır. Her değişken türü farklı bir veri türünü depolar
Adım 2. Değişkenleri nasıl bildireceğinizi öğrenin
Değişkenler program tarafından kullanılmadan önce oluşturulmalı veya bildirilmelidir. Veri türünü ve değişken adını girerek bir değişken bildirin. Örneğin, aşağıdaki değişkenler kullanılabilir:
yüzer x; karakter isimleri; int a, b, c, d;
- Aynı türden oldukları sürece arka arkaya birden çok değişken bildirebileceğinizi unutmayın. Her değişkenin adını virgülle ayırın.
- C'deki çoğu satır gibi, her değişkenin noktalı virgülle bitmesi gerekir.
Adım 3. Değişkenleri nerede bildirebileceğinizi bilin
Değişkenler her kod bloğunun başında ({} içinde) bildirilmelidir. Değişkenleri daha sonra bildirmeye çalışırsanız, programınız düzgün çalışmayacaktır.
Adım 4. Kullanıcı girdisini depolamak için değişkenleri kullanın
Değişkenlerin nasıl çalıştığını anladıktan sonra, kullanıcı girdisini depolayan programlar yazabilirsiniz. Programınızda scanf işlevini kullanacaksınız. Bu işlev, belirli bir değerde belirli bir girişi arar.
Dahil etmek
int ana() { int x; printf("Bir sayı giriniz:"); scanf("%d",&x); printf("%d girdiniz", x); getchar(); 0 döndürür; }
- "%d" satırı, scanf'e kullanıcı girişinde bir tamsayı aramasını söyler.
- x değişkeninden önceki &, scanf'e değişkenin onu değiştirmek için nerede bulunması gerektiğini söyler ve değişkende bir tamsayı depolar.
- Son printf komutu, kullanıcıya bir tamsayı döndürür.
Adım 5. Değişkenlerinizi manipüle edin
Bir değişkende zaten depolanmış olan verileri değiştirmek için matematiksel ifadeleri kullanabilirsiniz. Anlamanız gereken matematiksel ifadelerdeki fark, = bir değişkenin değerini ayarlarken, == benzer olup olmadıklarını görmek için her iki tarafın değerlerini karşılaştırır.
x = 3 * 4; /* "x"i 3 * 4 veya 12 olarak ayarla */ x = x + 3; /* orijinal "x" değerine 3 ekler ve yeni değeri bir değişken olarak ayarlar */ x == 15; /* "x"in 15'e eşit olup olmadığını kontrol eder */ x < 10; /* "x" değerinin 10'dan küçük olup olmadığını kontrol edin */
Bölüm 3/6: Koşullu İfadeleri Kullanma
Adım 1. Koşullu ifadelerin temellerini anlayın
Koşullu ifadeler birçok programın kalbinde yer alır ve cevapları DOĞRU veya YANLIŞ olan ifadelerdir, ardından sonuca göre programı yürütürler. En temel koşullu ifade if şeklindedir.
DOĞRU ve YANLIŞ, C'de farklı şekillerde çalışır. DOĞRU her zaman 0'dan farklı bir sayı ile biter. Karşılaştırma yaptığınızda sonuç DOĞRU ise, "1" sayısı çıkacaktır. "YANLIŞ" ise, "0" çıkacaktır. Bunu anlamak, IF ifadelerinin nasıl işlendiğini anlamanıza yardımcı olacaktır
Adım 2. Temel koşul operatörlerini öğrenin
Koşullu komutlar, değerleri karşılaştırmak için matematiksel operatörleri kullanır. Bu liste en sık kullanılan koşullu operatörleri içerir.
/* büyüktür */ < /* küçüktür */ >= /* büyüktür veya eşittir */ <= /* küçüktür veya eşittir */ == /* eşittir */ != /* eşit değildir ile */
10 > 5 DOĞRU 6 < 15 DOĞRU 8 >= 8 DOĞRU 4 <= 8 DOĞRU 3 == 3 DOĞRU 4 != 5 DOĞRU
Adım 3. Temel bir EĞER ifadesi yazın
Bir ifade kontrol edildikten sonra programın ne yapacağını belirtmek için bir EĞER ifadesi kullanabilirsiniz. Çok seçenekli harika bir program oluşturmak için onu diğer koşullu komutlarla birleştirebilirsiniz, ancak bu sefer alışmak için temel bir IF ifadesi oluşturun.
Dahil etmek
int main(){ if (3 < 5) printf("3, 5'ten küçük"); getchar();}
Adım 4. Durumunuzu geliştirmek için ELSE/IF ifadelerini kullanın
EĞER deyimini, farklı sonuçları işlemek için ELSE ve ELSE IF kullanarak genişletebilirsiniz. EĞER ifadesi YANLIŞ olarak değerlendirilirse, ELSE ifadesi yürütülür. ELSE IF, farklı durumları işlemek için tek bir kod bloğuna birden fazla IF ifadesi eklemenize olanak tanır. Koşullu ifadelerin nasıl etkileşime girdiğini görmek için aşağıdaki örneği okuyun.
#include int main() { int yaş; printf("Şu anki yaşınızı giriniz:"); scanf("%d", &yaş); if (yaş <= 12) { printf("Sen daha çocuksun!\n"); } else if (yaş < 20) { printf("Genç olmak oldukça güzel!\n"); } else if (yaş < 40) { printf("Hâlâ gençsin!\n"); } else { printf("Yaşla birlikte bilgelik gelir.\n"); } 0 döndür; }
Program, girdiyi kullanıcıdan alır ve IF ifadeleri aracılığıyla alır. Sayı ilk ifadeyi karşılıyorsa, ilk printf ifadesi döndürülür. İlk ifadeyi karşılamıyorsa, işe yarayan birini bulana kadar her ELSE IF ifadesi üzerinden alınır. Bunların hiçbiriyle eşleşmiyorsa, sonunda ELSE deyiminden geçer
Bölüm 4/6: Öğrenme Döngüleri
Adım 1. Döngülerin nasıl çalıştığını anlayın
Döngüler, belirli koşullar karşılanana kadar kod bloklarını tekrarlamanıza izin verdiği için programlamanın en önemli yönlerinden biridir. Bu, tekrarlanan eylemlerin uygulanmasını çok kolaylaştırabilir ve bir şeyin olmasını istediğiniz her seferinde yeni koşullu ifadeler yazmanıza gerek kalmaz.
Üç ana döngü türü vardır: FOR, WHILE ve DO…WHILE
Adım 2. Bir FOR döngüsü kullanın
Bu, en yaygın ve kullanışlı döngü türüdür. FOR döngüsünde ayarlanan koşullar karşılanana kadar işlevi çalıştırmaya devam edecektir. FOR döngüleri üç koşul gerektirir: değişkenin başlatılması, karşılanması gereken koşullar ve değişkenin güncellenme şekli. Tüm bu koşullara ihtiyacınız yoksa, yine de noktalı virgülle boşluk bırakmanız gerekir, aksi takdirde döngü sonsuza kadar çalışır.
Dahil etmek
int ana(){ int y; for (y = 0; y < 15; y++;){ printf("%d\n", y); } getchar();}
Yukarıdaki programda y 0'dır ve y değeri 15'in altında olduğu sürece döngü devam edecektir. y değeri her görüntülendiğinde, y değeri 1 artırılacak ve kendini tekrar etmeye devam edecektir. 15'e ulaştığında döngü duracaktır
Adım 3. WHILE döngüsünü kullanın
WHILE döngüsü, FOR döngüsünden daha basittir, çünkü yalnızca bir koşulu vardır ve koşul doğru olduğu sürece yinelenir. Bunu çekirdek döngüde yapabilmenize rağmen, değişkenleri başlatmanız veya güncellemeniz gerekmez.
#include int ana() { int y; while (y <= 15){ printf("%d\n", y); y++; } getchar(); }
y++ komutu, döngü her çalıştırıldığında y değişkenine 1 ekler. y 16'ya ulaştığında (bu döngünün y 15'ten küçük veya ona eşit olduğu sürece çalışacağını unutmayın), döngü duracaktır
Adım 4. "DO
.. WHILE . Bu döngü, döngünün en az bir kez yürütülmesini sağlamak istiyorsanız kullanışlıdır. FOR ve WHILE döngülerinde, koşulun sağlanmamasına izin vererek döngünün başında döngü koşulu kontrol edilir ve DO…WHILE döngüsü, döngünün en az bir kez yürütülmesini sağlayan son döngüdeki koşulu kontrol eder.
#include int ana() { int y; y = 5; do { printf("Bu döngü çalışıyor!\n"); } while (y != 5); getchar(); }
- Bu döngü, koşul YANLIŞ olsa bile bir mesaj görüntüler. y değişkeni 5'e ayarlanır ve döngü, y 5'e eşit olmadığında çalışacak şekilde ayarlanır, bu nedenle döngü durur. Mesaj, programın sonuna kadar koşul kontrol edilmediğinden yazdırıldı.
- DO…WHILE paketindeki WHILE döngüsü noktalı virgülle bitmelidir. Bu durum, döngünün noktalı virgülle bittiği tek durumdur.
Bölüm 5/6: İşlevleri Kullanma
Adım 1. Fonksiyonların temellerini anlayın
Fonksiyonlar, programın diğer bölümlerinden çağrılabilen kod parçalarıdır. İşlevler, kodu kolayca tekrarlamanıza ve programların okunmasını ve değiştirilmesini kolaylaştırır. Bu makaledeki tekniklerin hepsini bir fonksiyon içerisinde kullanabilir hatta diğer fonksiyonları da kullanabilirsiniz.
- Bu örneğin tamamının üstündeki main() satırı, getchar() gibi bir işlevdir.
- İşlevlerin kullanımı, verimli ve okunabilir kod için esastır. Düzgün bir program oluşturmak için mümkün olan en iyi işlevleri kullanın.
Adım 2. Bir taslakla başlayın
Fonksiyonlar, programlamaya başlamadan önce kullanımlarının ana hatlarını belirledikten sonra oluşturulmalıdır. Bir fonksiyonun temel sözdizimi "return_type name (argüman1, argüman2, vb.);" şeklindedir. Örneğin, iki sayı ekleyen bir işlev oluşturmak için:
int ekle(int x, int y);
Bu kod, iki tamsayı (x ve y) ekleyen ve ardından sonucu bir tamsayı olarak döndüren bir işlev yaratacaktır
Adım 3. Bir programda bir fonksiyon kullanın
Kullanıcıdan iki tamsayı girdisini kabul eden ve ardından bunları ekleyen bir program oluşturmak için program ana hatlarını kullanabilirsiniz. Program, artış fonksiyonunun nasıl çalıştığını kontrol edecek ve girilen sayıyı değiştirmek için kullanacaktır.
#include int add(int x, int y); int ana() { int x; int y; printf("Birbirine eklenecek iki sayı giriniz: "); scanf("%d",&x); scanf("%d",&y); printf("Sayılarınızın toplamı %d\n", add(x, y)); getchar(); } int ekle(int x, int y) { dönüş x + y; }
- Program taslağının en üstte yer aldığını unutmayın. Bu taslak, derleyiciye işlev çağrıldığında ne yapacağını ve işlevin sonucunu söyler. Bu taslak, yalnızca programın diğer bölümlerinde işlevleri tanımlamak istiyorsanız kullanışlıdır. add()'ı main()'den önce tanımlayabilirsiniz ve sonuç aynı olacaktır.
- Bir fonksiyonun asıl fonksiyonu programın alt kısmında tanımlanır. main() işlevi, kullanıcıdan tamsayı girdisini kabul eder ve işleme için onu add() işlevine iletir. add() işlevi, sonucu main() işlevine döndürür.
- add() tanımlandıktan sonra, fonksiyon programın herhangi bir yerinde çağrılabilir.
Bölüm 6/6: Derse Devam Etme
Adım 1. Bazı C ders kitapları bulun
Bu makale, C programlamanın temellerini kapsar, ancak yalnızca yüzeyini kapsar. İyi bir başvuru kitabı, sorunları çözmenize ve kafa karışıklığının üstesinden gelmenize yardımcı olacaktır.
Adım 2. Topluluğa katılın
Hem çevrimiçi hem de çevrimdışı birçok topluluk, programlama ve programlama dillerine adanmıştır. Fikir alışverişinde bulunmak ve kod yazmak için başka C programcıları bulun ve siz de çok şey öğreneceksiniz.
Mümkün olduğunda hackathon etkinliklerine katılın. Takımların ve programcıların, problemleri programlamak ve çözmek için zamanla yarıştığı, genellikle yaratıcı sonuçlar ürettiği bir olaydır. Dünya çapında düzenli olarak düzenlenen bu etkinlikte birçok yetenekli programcı bulabilirsiniz
Adım 3. Bir programlama dersi alın
Bilişim Mühendisliği okumanıza gerek yok, ancak programlama dersleri almak öğrenme sürecinize gerçekten yardımcı olacaktır. Bir programlama diline aşina olan birinin yardımından daha büyük bir yardım yoktur. Gençlik merkezlerinde ve yakındaki kolejlerde programlama dersleri alabilirsiniz ve bazı kolejler derslerini öğrenci olmadan almanıza izin verir.
Adım 4. C++ öğrenin
C'yi bir kez anladığınızda, C++ öğrenmekten asla zarar gelmez. C++, C'nin daha esnek olan modern bir sürümüdür. C++, nesne işleme düşünülerek tasarlanmıştır ve C++'ı anlamak, çeşitli işletim sistemleri için güçlü programlar oluşturmanıza olanak tanır.
İpuçları
- Programınıza her zaman yorum ekleyin. Yorumlar yalnızca diğer kişilerin kodunuzu görmelerine yardımcı olmakla kalmaz, aynı zamanda ne yazdığınızı ve kodu neden yazdığınızı hatırlamanıza da yardımcı olur. Şu anda ne yazdığını biliyor olabilirsin ama iki üç ay sonra hatırlamayacaksın.
- printf(), scanf(), getch() vb. gibi ifadeleri her zaman noktalı virgülle sonlandırın, ancak "if", "while" veya "for" gibi döngü kontrol ifadelerinde noktalı virgül kullanmayın.
- Derlemede sözdizimi hatalarıyla karşılaştığınızda, kafanız karıştıysa bir Google araması yapın. Büyük olasılıkla, başka biri de aynı şeyi yaşadı ve bir çözüm gönderdi.
- C kaynak kodunuz *. C uzantısına sahip olmalıdır, böylece derleyici dosyanızın C kaynak kodu olduğunu anlayabilir.
- Çalışkanlığın her zaman zeki olduğunu unutmayın. Programlama pratiği ne kadar gayretli olursa, o kadar hızlı sorunsuz programlama yapabileceksiniz. Akıcı olana kadar kısa, basit programlarla başlayın ve kendinize güvendikten sonra daha karmaşık programlar üzerinde çalışabilirsiniz.
- Kod yazarken çok yardımcı olacağı için mantık yapısını öğrenmeye çalışın.