Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Bugünkü konular Programlama dilleri ve Syntax Generic C Program yapısı

Benzer bir sunumlar


... konulu sunumlar: "Bugünkü konular Programlama dilleri ve Syntax Generic C Program yapısı"— Sunum transkripti:

1 Bugünkü konular Programlama dilleri ve Syntax Generic C Program yapısı
Değişkenler Değişken Tipi ve İsmi Operator kullanımı Basit I/O (input/output – girdi/çıktı) scanf/printf

2 Problem çözümü ilke ve evreleri
Gereklilik Analizi Problem ve Girdi/Çıktıları anlama Dizayn Problemi çözecek algoritma (çözüm basamakları) oluşturma Kodlama Algoritmayı bir programlama dilinde kodlama Biz bu derste C dilini kullanacağız. Test Programın doğruluğunu kontrol etme

3 Programlama Dilleri(PL)
Programlama dilleri algoritmaları implamente etmek kullanılan kurallar bütünüdür. Bu kurallar syntax olarak adlandırılır. (veya programlama dilinin syntactic kuralları olarak isimlendirilir.) Her programlama dilinin kendi has syntax ı vardır. Bir giriş dili olarak C programlama dilini kullanacağız.

4 Niçin C? Basit ve Yapısaldır Uygunluk ve Taşınabilirlik
En az syntax Uygunluk ve Taşınabilirlik C derleyicileri geniş bir platform desteğine sahipdir. Windows, UNIX/LINUX, embedded(gömülü) systemler System programlama için kullanılabilen bir dildir. İşletim sistemlerinin çoğu C ile yazılmıştır. En Çok Bilinendir Hemen hemen tüm programcılar C bilir C de yazılmış çok fazla açık/genel kod vardır. 4

5 C’nin Tarihi C’nin gelişim evreleri:
CPL Combined Programming Language (Barron, 1963) BCPL Basic CPL (Richards, 1969) B (Thompson, 1970) C (Kernighan & Ritchie, 1972) ANSI C American National Standards Institute C (X3J11, 1989) 5

6 İlk C Programı PROBLEM Fahrenheit’ı santigrata dönüştür.
#include <stdio.h> /* Fahrenheit’ı santigrata dönüştür */ main() { float fahrenheit; float santigrat; printf(“fahrenheit sıcaklığı gir: “); scanf(“%f”, &fahrenheit); santigrat = (fahrenheit-32)/1.8; printf(“%f fahrenheit derece %f santigrat dereceye eşittir\n”, fahrenheit, santigrat ); } fahrenheit dereceyi al santigrat = (fahrenheit-32)/1.8 Fahrenhayt ve Santigrat dereceleri ekrana yazdır. Başla Bitiş Kullanıcıya sıcaklık girmesini bildir

7 İlk C Programını anlamak
#include <stdio.h> /* Fahrenheit’ı santigrata dönüştür */ main() { float fahrenheit; float santigrat; printf(“fahrenheit sıcaklığı gir: “); scanf(“%f”, &fahrenheit); santigrat = (fahrenheit-32)/1.8; printf(“%f fahrenheit derece %f santigrat dereceye eşittir\n”, fahrenheit, santigrat ); } Standart I/O kütüphanesini yükle Açıklamalar: /* …. */ arasında main(): Programın nerden başlayacağını gösterir Süslü parantezler Bir kod bloğunun başlangıç ve bitişini işaret eder.

8 İlk C Programını anlamak (devam)
#include <stdio.h> /* Fahrenheit’ı santigrata dönüştür */ main() { float fahrenheit; float santigrat; printf(“fahrenheit sıcaklığı gir: “); scanf(“%f”, &fahrenheit); santigrat = (fahrenheit-32)/1.8; printf(“%f fahrenheit derece %f santigrat dereceye eşittir\n”, fahrenheit, santigrat ); } Değişkenler değişken bir hafıza alanıdır. İçeriği programın çalışması süresince doldurulabilir ve değiştirilebilir. float bir değişken tipidir fahrenheit ve santigrat değişken adlarıdır. İfadeler program adımlarıdır. her ifade noktalı virgül ile biter (;)

9 İlk C Programını anlamak (devam)
#include <stdio.h> /* Fahrenheit’ı santigrata dönüştür */ main() { float fahrenheit; float santigrat; printf(“fahrenheit sıcaklığı gir: “); scanf(“%f”, &fahrenheit); santigrat = (fahrenheit-32)/1.8; printf(“%f fahrenheit derece %f santigrat dereceye eşittir\n”, fahrenheit, santigrat ); } Output - Çıktı Ekrana bir şeyler yazdırmak için printf fonksiyonunu kullan Input - Girdi Klavyeden bir şeyler okumak için scanf fonksiyonunu kullan. Hesaplama Hesaplamalar için matematiksel ifadeleri/operatörleri kullan.

10 C kodundan Makine Koduna dönüşüm
prog.c COMPILER ASSEMBLER LINKER LOADER + OS prog.s prog.o printf.o scanf.o prog.exe program çalışması Şimdi bizim bir C programımız var. Bu nasıl makine koduna yani 1 ve 0 lara dönüştürülecek. Bilgisayarların 1 ve 0 dan anlayabildiklerini hatırlayın. C programlarını makine koduna dönüştürmek için birkaç yazılımsal bileşen kullanılıyor. Compiler(derleyici), assembler, linker, loader+OS

11 İlk C programının Çalışması
#include <stdio.h> /* Fahrenheit’ı santigrata dönüştür */ main() { float fahrenheit,santigrat; printf(“fahrenheit sıcaklığı gir: “); scanf(“%f”, &fahrenheit); santigrat = (fahrenheit-32)/1.8; printf(“%f fahrenheit derece %f santigrat dereceye eşittir\n”, fahrenheit, santigrat ); } /* son-main*/ VERİLER fahrenheit ? ? 75.4 santigrat 24.11 ? Fahrenheit sıcaklığı gir: 75.4 fahrenheit derece santigrat dereceye eşittir 75.4

12 İlk C programının Çalışması
#include <stdio.h> main() { float f,s; printf(“fgir: “); scanf(“%f”, &f); s = (f-32)/1.8; printf(“%f f %f s\n”, f, s ); } VERİLER fahrenheit ? ? 75.4 santigrat 24.11 ? Fahrenheit sıcaklığı gir: 75.4 fahrenheit derece santigrat dereceye eşittir 75.4

13 Generic C Program Yapısı
#include <stdio.h> /* main programın başlangıcını işaret eder */ main() { /* Değişkenler programda kullanılacak verileri tutar. */ Değişken Tanımlama; /* Program basamakları: I/O, hesaplamalar (ifadeler) */ İfade1; İfade2; İfadeN; } /* program sonu*/

14 Değişken Nedir? İçeriği programın çalışması boyunca doldurulabilen ve değiştirilebilen bir hafıza alanıdır. Her değişkenin bir tipi ve ismi vardır. Tip o hafıza alanında saklanacak verinin tip bilgilerini ifade eder. İsim o hafıza bölgesine ulaşmamız için bir etikettir. Hafıza sayi2 sayi1 name int sayi1; /* bir tam sayıyı depolar (152) */ float sayi2; /* bir ondalıklı sayıyı depolar (65.324) */

15 Değişken Tanımlama Temel değişken tanımlama formatı
veritipi veriAdı, veriAdı, ... ; veritipi aşağıdakiler olabilir int /* tam sayıları tutar, */ float /* gerçek satıları tutar, */ double /* gerçek sayıları tutar, fakat çok daha hassas*/ /* */ char /* bir ASCII karakter tutar, ‘A’ */

16 Değişken İsimleri C değişkenleri harf ve rakam kombinasyonlarından oluşabilirler fakat: İlk karakter harf olmak zorunda fahrenheit, santigrat, toplam, a123, i1, i2, i3 Büyük veya küçük harfler kullanılabilir Küçük ve büyük harfler aşağıdaki gibi kullanılabilir sum, Sum, SUM Alt çizgi (_) ilk karakter olabilir veya arada/sonda kullanılabilir. ogrenci_no, _ogrNo, __ogr_no__

17 Değişken İsimleri (devam)
C değişken isimleri harf ve rakamların birleşiminden oluşabilir, fakat: Değişken isimleri boşluk, tire veya tırnak içeremez “ogrenci” : tırnaklar(“) geçersiz ogrenci-no : geçersiz karakter ( - ) ogrenci no: arada boşluk kullanılmamalı (ogrenci_no) Değişken isimleri büyük/küçük harf duyarlıdır toplam, Toplam ve toplaM hepsi farklı değişkenlerdir.

18 Değişken örnekleri & atama
int x; /* 1 int tanımlar */ float fahrenheit, santigrat; /* 2 float tanımlar */ double d; /* 1 double tanımlar */ x = -85; /* x e -85 atanır */ d = ; /* d ye atanır */ fahrenheit = 75.0; /* fahrenheit a 75.0 atanır */ santigrat = 23.4; /*santigrat a 23.4 atanır */ = atama operatörüdür kullanım: değişken = değer; Değişkenlerin ifade ettiği hafıza alanlarındaki değerleri değiştirir. -85 75.0 23.4 x d fahrenheit santigrat

19 Değişken Tanımlama & İlk Değer Atama
Değişkenlere tanımlandığı yerde ilk değer verilebilir int toplam = 32000; /* positif olabilir */ int x = -23, y = 458; /* negatif olabilir */ float f1 = 34.5; float fahrenheit = 75.3, santigrat = 0; double d1, d2 = ; /* negatif olabilir*/ double d3 = 5e+3; /* bilimsel kodlama: 5x10^3 */ d1 = 675e-4; /* 675x10^-4 = */ 32000 -23 458 34.5 75.3 0.0 0.0675 -4.567 5000 toplam x y f1 fahrenheit santigrat d1 d2 d3

20 Karakter Değişkenler Tek bir karakteri ifade eder
Karakterler alfabedeki (büyük/küçük) harfler 0’dan 9’a 10 rakam Bazı özel semboller Karakterler tırnak işareti arasında kullanılır örneğin. 'A' char c; c = 'A'; /* A harfi*/ c = '9'; /* 9 rakamı */ char c = 'c'; /* ilk değer atama */

21 Karakter Değişkenler (devam)
Aslında karakterler 1 byte lık doğal sayıları ifade eder char tipi değişkenler hafızada 1 byte yer tutar Karakterlerin (char değişkenleri) ASCII tablosundaki değerleri… ‘A’ nın ASCII değeri 65 ‘B’ nın ASCII değeri 66 ‘0’ ın ASCII değeri 48 ‘1’ in ASCII değeri 49

22 ASCII Tablosu

23   Özel Karakterler Karakterler tek tırnak arasında gösterilir
Tırnak işaretini nasıl göstereceğiz? char c; c = '''; char c; c = '\''; Ters slaş(\) bir karakterin önünde kullanılırsa bu durum Escape Sequence (kaçış dizisi) olarak adlandırılır. - Kendisinden sonra gelecek Karakterin anlamını yok eder.

24 Escape Sequence – kaçış dizisi
Ters slaş (\) ve bir karakterden oluşur. Derleyiciye sonraki karakterin normal olarak algılanması işaretini verir. Sık kullanılanlar \n sonraki satıra geç \t sonraki sekmeye geç \r satır başına dön \\ ters slaş karakteri \' tek tırnak \" çift tırnak

25 sizeof Operatörü sizeof operatörünü kullanarak değişken tiplerinin gerçekte hafızada kaç byte yer tuttuğunu öğrenebilirsiniz. int a = sizeof(char); /* 1 döner */ int b = sizeof(short); /* 2 döner */ int c = sizeof(int); /* 4 döner */ int d = sizeof(long); /* 4 veya 8 * döner/ int e = sizeof(float); /* 4 döner*/ int f = sizeof(double); /* 8 döner*/ 1 2 4 4/8 4 8 a b c d e f

26 Veri Tipleri ve Özellikleri
Veri tipi boyut Aralık char 1 byte -128 : 127 unsigned char 0 : 255 short 2 byte : 32767 unsigned short 0 : 65535 int 4 byte : long 4/8 byte unsigned int 0 : float (7 hassasiyet) e-38 : e+38 double (15 hassasiyet) 8 byte e-308 : e+308


"Bugünkü konular Programlama dilleri ve Syntax Generic C Program yapısı" indir ppt

Benzer bir sunumlar


Google Reklamları