C ile Programlamaya Giriş

Slides:



Advertisements
Benzer bir sunumlar
Bölüm 11 Metin Dosyaları Metin Dosyaları Dosya Açma ve Kapama
Advertisements

STRİNG FONKSİYONLARI.
Bölüm 12 ÜST DÜZEY KONULAR Dinamik Bellek Ayırma Önişlemci
C PROGRAMLAMA DİLİNE GİRİŞ
Bölüm 7 Fonksiyonlar GÖSTERGELER Gösterge Tanımı
Bölüm 2 C Dilinin Temelleri
String Diziler(Katarlar)
C Programlama Diline Giriş
Bölüm 4 İşlevlerve Modüler Programlama. 1 / 8 İşlev Tanımı /* İşlev açıklama satırı */ ( ) { }
Değişken Bildirimleri
Atama ve Girdi/Çıktı Komutları
Bölüm 2: Program Denetimi
Soru1: kuvvet(taban,us) Şeklinde bir yinelenen fonksiyon yazın
Bölüm 9 Dizgiler Dizgi Tanımı Dizgi Girdi İşlemleri
Bölüm 9 Dizgiler Dizgi Tanımı Dizgi Girdi İşlemleri
String Kütüphanesindeki Arama Fonksiyonları
Bölüm 10 Yapılar ve Birleşimler
Bölüm 2 C Dilinin Temelleri Genel Kavramlar
Nesneye Dayalı Programlama
Soru1: Kullanıcıdan iki tam sayı girmesini isteyen ve daha sonra büyük olan sayı ile beraber ‘en büyüktür’ ifadesi yazan, ancak sayılar birbirine eşitse.
Fonksiyonlar.
Bilgisayar Programlama
C++ Temelleri C++ genel amaçlı, nesne tabanlı, yüksek seviye programlama dilidir.
C ile Programlamaya Giriş
Paralel Programlamaya Giriş
FONKSİYONLAR.
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
DOSYA İŞLEMLERİ.
Diziler Adres Kavramı Nesnelerin Adresleri sizeof Operatörü
Bilgisayar Programlama
Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
Fonksiyonlar Fonksiyon Tanımı
BPR152 ALGORİTMA VE PROGRAMLAMA - II Öğr. Gör. Bayram AKGÜL
C Programlama Diline Giriş
Bölüm 6 Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
Dizgiler Dizgi Tanımı Dizgi Girdi İşlemleri Dizgi Çıktı İşlemleri Dizgi Fonksiyonları Karakter Fonksiyonları Gösterge Dizgileri.
Örnek Adam asmaca oyununun programının yazılması.
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 4: Fonksiyonlar
1 Yapılandırılmamış programlama Prosedür/Fonksiyon gerekliliği Prosedural Programlama Fonksiyon Tanımlama/Prototip/Çağırma Örnek fonksiyonlar Fonksiyon.
SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz
Bölüm 3 Atama ve Girdi/Çıktı Komutları Bölüm 3 Atama ve Girdi/Çıktı Komutları Atama Komutu Operatörler İsim Sabitleri Veri Tipi Dönüşümü Çıktı Fonksiyonu.
Döngü Komutları. for deyimi bir alt limitten, bir üst limite kadar programın belirli bir parçasını tekrar eder. for deyiminde sayaç artış oranı da verilmelidir.
Fonksiyonlar.
BİLGİSAYAR programlama II
1 Değişken alanları Geçici değişkenler Birleşik ifadeler(bloklar) ve değişkenler Değişken Depolama Süresi ve Alanı –Local ve global değişkenler –Static.
VERİ ve BELLEK & DEĞİŞKENLERİN SAKLANMASI Asst.Prof.Dr.Misket YEKTAY Gizem AYIK.
Bölüm 2 C Dilinin Temelleri Genel Kavramlar Yazım ve Noktalama Kuralları C Kütüphaneleri C Dilindeki Sözcükler Değer Sabitleri Veri Tipleri Değişkenler.
Programlamaya Giriş-I Bölüm-1. Algoritma Algoritma günlük yaşamımızda yaptığımız işler sırasında sıklıkla kullandığımız bir yöntemdir. Algoritma, bir.
Bölüm 2 C Dilinin Temelleri
PROGRAMLAMAYA GİRİŞ.
Bölüm 3 Atama ve Girdi/Çıktı Komutları
Bilgisayar Programlama BIL 107
Fonksiyonlar ve Diziler
Bölüm 6 Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
C Programlama Dili Bilgisayar Mühendisliği.
C’de Fonsiyonlar Aslı Ergün.
BİLGİSAYAR PROGRAMLAMA Ders 10: Dosyalama İşlemleri
BİLGİSAYAR PROGRAMLAMA Ders 8: Fonksiyonlar
C Programlama Diline Giriş
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 5: Fonksiyonlar
Bölüm 8 Diziler Dizi Tanımı Dizi Elemanlarına Değer Atama
Bölüm 9 Dizgiler Dizgi Tanımı Dizgi Girdi İşlemleri
Bölüm 2 C Dilinin Temelleri
Bölüm 8 Diziler Dizi Tanımı Dizi Elemanlarına Değer Atama
YAPISAL PROGRAMLAMA Hafta-6
YAPISAL PROGRAMLAMA Hafta-7
Bölüm 6: Kullanıcı Tanımlı Fonksiyonlar I
Bölüm 3 Atama ve Girdi/Çıktı Komutları
Bölüm 2 C Dilinin Temelleri
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

C ile Programlamaya Giriş Uğur Ali Kaplan

C’yi Tanıma

Giriş C genel amaçlı, yordamsal bir programlama dilidir. Dilin çıkış amacı sistem programlamadır. Bugün de en çok gömülü sistem programlama, işletim sistemi programlama amaçlarıyla kullanılmaktadır. Bunların yanında kelime işlemci, veritabanı ve grafiksel yazılımlar oluşturmak için de kullanılır. En temel özellikleri verimli, kod taşınabilir ve makineye yakın olmasıdır.

C Dili C dilinin yordamsal olarak adlandırılmasının sebebi, yazacağımız programların temelinin fonksiyonlara dayanmasıdır. Fonksiyonlar, bilgisayara ileteceğimiz komutları gruplandırmamızı sağlar.

PRINZ, P., CRAWFORD, T., C in a Nutshell. 2nd ed. O'Reilly Media, 2015

İlk Program #include <stdio.h> int main(void){ Geleneği bozmadan önce ekrana “Merhaba Dünya!” yazalım. #include <stdio.h> int main(void){ printf("Merhaba Dünya!"); return 0; }

// korkutma_beni.c: Dairelerin alanını hesaplayan ve sonuçları ekrana yazan bir program #include <stdio.h> // Önişlemci Yönergesi double daireAlan(double r); // Fonksiyon prototipi int main(void){ // main() fonksiyonunun tanımı başlıyor double yaricap = 1.0; double alan = 0.0; printf("Dairelerin alanı: \n\n"); printf("Yarıçap\tAlan:\n" "--------------------"); alan = daireAlan(yaricap); printf("%10.1f\t%10.2f\n", yaricap, alan);

yaricap = 5.0; alan = daireAlan(yaricap); printf("%10.1f\t%10.2f\n", yaricap, alan); return 0; } // daireAlan() fonksiyonu dairenin alanını hesaplar // Parametre: Dairenin yarıçapı // Döndürülen Değer: Dairenin alanı double daireAlan(double r){ const double pi = 3.1415926536; return (pi * r * r);

Noldu Şimdi? Hızlı bir giriş oldu ama kodu adım adım incelediğimizde her şey açıklığa kavuşacak. Yorum Satırları // korkutma_beni.c: Dairelerin alanını hesaplayan ve sonuçları ekrana yazan bir program Bu satırlar, yorum satırlarıdır. Makinenin umrunda olmayan ancak kodunuzu okuyan kişinin size teşekkür etmesini ya da en azından sövmemesini sağlayacak satırlar işte bunlardır. Hatta bu kişi siz de olabilirsiniz, çünkü projenizi 1 - 2 ay dahi görmezseniz her şeyi unutacaksınız. İşte yorum satırlarının amacı, kodun her satırının didik didik işlenmesi ve vakit kaybı + stres artışı yaşanması yerine bir iki cümleyle programda neler olup bittiğini açıklamaktır. Ne çok fazla, ne de çok az olmalıdır.

Noldu Şimdi? Önişlemci Yönergesi #include <stdio.h> Bu satırlarda, programımız henüz derlenmeye başlamadan önce bilgisayarın bilmesi gereken bilgileri gönderiyoruz. Spesifik örneğimizde, C’nin kütüphanelerinden olan standart girdi/çıktı kütüphanesini dahil ettik. Böylece kullanıcıdan bilgi alma veya kullanıcıya bilgi verme görevimizi yerine getirebileceğiz.

Noldu Şimdi? Fonksiyon Prototipi double daireAlan(double r); // Fonksiyon prototipi Bu satıra az sonra değineceğim.

Noldu Şimdi? main() Fonksiyonu int main(void){ // main() fonksiyonunun tanımı başlıyor Her C programında olması gereken bir fonksiyondur. C programları, çalışmaya main() fonksiyonunun ilk satırından başlar. C’de fonksiyonların döndüreceği veri tipi önceden bellidir. int, tamsayı tipidir. main() fonksiyonu eğer program sorunsuz şekilde çalıştıysa 0 değerini döndürür. Başka bir değer dönerse, bu programın beklenmedik şekilde sonlandığını gösterir. Döndürülecek veri tipinin belirtilmesinin ardından fonksiyon adı gelir. Fonksiyonun yanındaki parantezlere ise fonksiyonun parametreleri, yani dışarıdan veri almasını sağlayacak değişkenleri yazılır. Bu örnekte void yazılması, fonksiyonun parametresi olmadığını göstermektedir. Ardından gelen { parantez ise bir kod bloğu başlatır. Birkaç satır aşağıdaki } ile birleşince, fonksiyonun içeriğini belirlerler.

Noldu Şimdi? Değişkenler double yaricap = 1.0; double alan = 0.0; Bu satırlarda hem değişken bildirimi, hem de değişken ataması yaptık. double veri tipinde olduğunu bildirdiğimiz yaricap değişkenine, aynı satırda 1.0 değerini atamış olduk.

Noldu Şimdi? printf() Fonksiyonu printf("Dairelerin alanı: \n\n"); printf() fonksiyonu, <stdio.h> dosyasında tanımlanmış bir fonksiyondur. Görevi, ekrana çıktı yazmaktır. Parantezlerin arasına ekrana yazacağımızı yazarız. En sondaki “\n” karakteri, yeni satır karakteridir. Çift \n kullanılarak iki satır boşluk bırakılması sağlanmıştır

Noldu Şimdi? Fonksiyon Çağrısı alan = daireAlan(yaricap); daireAlan ismindeki fonksiyonumuzu çağırdık. Parametre istediği için, yaricap değişkenini argüman olarak verdik. Fonksiyonun içinde bir takım işlemler yapıldı ve fonksiyon bir değer döndürdü. Dönen bu değeri de alan değişkenine atamış olduk.

Noldu Şimdi? printf()’in Format Özelliği printf("%10.1f\t%10.2f\n", yaricap, alan); daireAlan ismindeki fonksiyonumuzu çağırdık. Parametre istediği için, yaricap değişkenini argüman olarak verdik. Fonksiyonun içinde bir takım işlemler yapıldı ve fonksiyon bir değer döndürdü. Dönen bu değeri de alan değişkenine atamış olduk.

Noldu Şimdi? const Anahtar Kelimesi const double pi = 3.1415926536; Sabit değişkenler.

Noldu Şimdi? return Anahtar Kelimesi return (pi * r * r); Fonksiyonun yaptığı işlem sonucunda döndüreceği değer/değişken.

Diğer Başlıklar Fonksiyon İçinde Fonksiyon? Whitespace? Çok satırlı yorumlar

PRINZ, P., CRAWFORD, T., C in a Nutshell. 2nd ed. O'Reilly Media, 2015

Daha Neler Var? Basit Veri Tipleri, Değişkenler ve Operatörler(int, float, double, char, logical ops., strings?) Döngüler ve Seçim Deyimler(if, else if, else, while, do-while, for) Fonksiyonlar Diziler(Array) İşaretçiler(Pointer) Yapılar ve Birlikler(Structs & Unions) Dinamik Bellek Yönetimi(malloc & free) Dosya İşlemleri

Ödev Benzer şekilde dikdörtgenin alanını hesaplayan program yazımı.

1/9 Bitti Bile! ITU ACM Student Branch Programlama Dersleri Uğur Ali Kaplan İstanbul Teknik Üniversitesi Uğur Ali Kaplan isimli yazarın C ile Programlamaya Giriş başlıklı eseri bu Creative Commons Atıf 4.0 Uluslararası Lisansı ile lisanslanmıştır.