TEMEL C PROGRAMLAMA DERS 2 HAZIRLAYAN GKHAN YALINIZ

  • Slides: 21
Download presentation
TEMEL C PROGRAMLAMA DERSİ 2 HAZIRLAYAN GÖKHAN YALINIZ HUNROBOTX 2012 1

TEMEL C PROGRAMLAMA DERSİ 2 HAZIRLAYAN GÖKHAN YALINIZ HUNROBOTX 2012 1

OPERATÖRLER Degişkenler veya sabitler üzerinde daha önceden belirlendiği şekilde işlem yaptıran sembollerdir. Aritmetik Operatörler

OPERATÖRLER Degişkenler veya sabitler üzerinde daha önceden belirlendiği şekilde işlem yaptıran sembollerdir. Aritmetik Operatörler Değişkenler veya sabitler üzerinde temel aritmetiksel işlemler yapar. Operator Açıklama Ornek Anlami + toplama x+y x ve y nin toplamı - cikarma x-y x ve y nin farkı * carpma x*y x ve y nin çarpımı / bolme x/y x ve y nin oranı % artık bölme x%y x/y den kalan sayı HUNROBOTX 2012 2

�Karşılaştırma ve Mantıksal Operatörler Değişkenler veya sabitleri karşılaştırmak için kullanılır. Mantıksal işlemler için kullanılır.

�Karşılaştırma ve Mantıksal Operatörler Değişkenler veya sabitleri karşılaştırmak için kullanılır. Mantıksal işlemler için kullanılır. Operator Açıklama Ornek Anlamı > büyüktür x>y x, y den büyük mü? < küçüktür x<y x, y den küçük mü? == eşittir x==y x, y ye eşit mi? >= büyük-eşittir x>=y x, y den büyük yada eşit mi? <= küçük-eşittir x<=y x, y den küçük yada eşit mi? != eşit değil x!=y x, y den farklı mı? && mantıksal VE x>2 && x<y x 2 den büyük VE y den küçük mü? || mantıksal VEYA x>2 || x<y x 2 den büyük VEYA y den küçük mü? HUNROBOTX 2012 3

�Atama Operatörleri Değişkenlere bir deger atamak için kullanılır. Operator Açıklama Ornek Anlamı = atama

�Atama Operatörleri Değişkenlere bir deger atamak için kullanılır. Operator Açıklama Ornek Anlamı = atama a=2; += ekleyerek atama a+=3; a=a+3; -= eksilterek atama a-=4; a=a-4; *= çarparak atama a*=5; a=a*5; /= bölerek atama a/=6; a=a/6; %= bölüp, kalanını atama a%=7; a=a%7; ++ bir arrtırma a++; veya ++a; s=a+1; -- bir azaltma a--; veya --a; a=a-1; HUNROBOTX 2012 4

Operatörlerde Öncelik Sırası HUNROBOTX 2012 5

Operatörlerde Öncelik Sırası HUNROBOTX 2012 5

KARAR VERME KONTROL DEYİMLERİ �Karar verme kontrol deyimleri verilen şartı kontrol eder. Kontrol sonucuna

KARAR VERME KONTROL DEYİMLERİ �Karar verme kontrol deyimleri verilen şartı kontrol eder. Kontrol sonucuna göre istenen işlemleri yapar. if , if else , switch case HUNROBOTX 2012 6

if TANIMI YAPISI ÖRNEK if deyimi verilen şartın gerçekleşmesine bağlı olarak komut veya komutların

if TANIMI YAPISI ÖRNEK if deyimi verilen şartın gerçekleşmesine bağlı olarak komut veya komutların çalışmasını sağlar. if(sart) { if(sayi>0) { HUNROBOTX 2012 komut(lar); } printf(“Sayi pozitiftirn”); } 7

İf else TANIMI YAPISI ÖRNEK if else deyimi parantez içindeki şartın gerçekleşme ve gerçekleşmeme

İf else TANIMI YAPISI ÖRNEK if else deyimi parantez içindeki şartın gerçekleşme ve gerçekleşmeme durumuna göre ayrı komut(lar) yerine getirir. if (sart) { if(sayi%2==0) { printf(“Ciftn”); } else { printf(“Tekn”); } } else { } HUNROBOTX 2012 komut(lar); 8

İç içe if else TANIMI YAPISI ÖRNEK İç içe if else deyimini sartın 2

İç içe if else TANIMI YAPISI ÖRNEK İç içe if else deyimini sartın 2 den fazla olduğu durumlarda tercih edilir if (sart_1) { komut(lar); } else if( sart_2) { komut(lar); }. . . if (sayi<0) printf(“Sayi negatiftirn”); else if (sayi>0) printf(“Sayi pozitiftirn”); else printf(“Sayi 0 dırn”); HUNROBOTX 2012 9

switch case TANIMI Verilen ifade veya değişkenin aldığı değere göre işlem yapmak için kullanılır.

switch case TANIMI Verilen ifade veya değişkenin aldığı değere göre işlem yapmak için kullanılır. YAPISI ÖRNEK switch(degisken) { case sabit_1: komut(lar); break; case sabit_2: komut(lar); break; . . default: komut(lar); } switch(kaynama_nokt) { case 100: printf(“su n”); break; case 357: printf(“civan”); break; case 2660: printf(“altınn”); break; HUNROBOTX 2012 default: printf(“bulunamadı”); } 10

DÖNGÜ DEYİMLERİ �Yazılan programda yapılacak komutlar belli bir sayıda veya belli koşul sağlandığında sürekli

DÖNGÜ DEYİMLERİ �Yazılan programda yapılacak komutlar belli bir sayıda veya belli koşul sağlandığında sürekli tekrar edecekse döngü deyimleri kullanılır. while, do while, for HUNROBOTX 2012 11

while TANIMI YAPISI ÖRNEK int i=0; Bu döngü belirtilen şart sağlandığı sürece istenen komutlar

while TANIMI YAPISI ÖRNEK int i=0; Bu döngü belirtilen şart sağlandığı sürece istenen komutlar gerçekleştirilir. while(sart) { komut(lar); } while(i<5) { printf(“i=%dn”, i); i++; } //// while(1) { printf(“Hunrobotxn”) ; } HUNROBOTX 2012 12

do while TANIMI Bu döngünün çalışma mantığının while döngüsünden farkı içerisindeki komutların en az

do while TANIMI Bu döngünün çalışma mantığının while döngüsünden farkı içerisindeki komutların en az bir kere gerçekleşecegidir. YAPISI ÖRNEK do { int i=0; do { komut(lar); } while(sart); HUNROBOTX 2012 printf(“hunrobotxn”); i++; } while(i<10); 13

for TANIMI YAPISI for deyiminde verilen for(atama; sart: adım) şart doğru olduğu { sürece

for TANIMI YAPISI for deyiminde verilen for(atama; sart: adım) şart doğru olduğu { sürece belirlenen komut(lar); islemler tekrarlanır. Diğer döngülere göre } yapısal farklılığı vardır. ÖRNEK for(i=0; i<10; i++) { printf(“Hunrobotxn”) ; } ////// for(; ; ) { printf(“Hunrobotxn”) ; HUNROBOTX 2012 } 14

FONKSİYONLAR �C dilinde kullanıla alt programlara fonksiyon denilmektedir. �Program alt porgramlara bölünerek hata bulma

FONKSİYONLAR �C dilinde kullanıla alt programlara fonksiyon denilmektedir. �Program alt porgramlara bölünerek hata bulma hızı ve zaman kazacı arttırılır. Terimler �Parametre: Fonksiyona gönderilen sayı. �Argüman: Fonksiyonun girdi olarak aldığı sayı. �Prototip: Fonksiyonların kullanılmadan önce programa tanıtılması. Programlar argüman ve parametreye bağlı olarak gruplandırılabilir. Bunlardan 2’sini işleyecegiz. HUNROBOTX 2012 15

�Foksiyon Prototipi: fon_veri_tipi fon_ismi (parametre_veri_tip(ler)i int fon_1(int x, int y) ; int fon_2(int ,

�Foksiyon Prototipi: fon_veri_tipi fon_ismi (parametre_veri_tip(ler)i int fon_1(int x, int y) ; int fon_2(int , int ); double fon_3(int , ); parametre_ism(ler)i); • Fonksiyon Cagırımı: fon_1(3, 5); fon_2(6, 123); fon_3(9); • Dönderilecek deger için(argüman) return komutu kullanılmalıdır. HUNROBOTX 2012 16

Parametre Alıp Argüman Döndüren TANIMI YAPISI ÖRNEK Bu fon_veri_tipi fon_ismi (par_veri_tipi par) int toplama(int

Parametre Alıp Argüman Döndüren TANIMI YAPISI ÖRNEK Bu fon_veri_tipi fon_ismi (par_veri_tipi par) int toplama(int x, int y) fonksiyonlar { { ana komut(lar); fonksiyondan int sonuc; veri alır, return argumant; sonuc=x+y; gerekli } işlemleri return sonuc; yapar, } tekrar argüman tipine göre oluşan degeri fonksiyonun çagırıldığı yere gönderir. HUNROBOTX 2012 17

Parametresiz Olup Argüman Döndürmeyen TANIMI YAPISI ÖRNEK Bu fonksiyonlar ne ana fonksiyondan veri alır

Parametresiz Olup Argüman Döndürmeyen TANIMI YAPISI ÖRNEK Bu fonksiyonlar ne ana fonksiyondan veri alır ne de veri gönderir. Bilgi verme anaclı kullanılabilir. *Kendi içinde veri işleyebilir. void fon_ismi(void) { void tanıtım( ) { printf(“Hunrobotxn”); printf(“ 2012n”); printf(“Temel Cn”); printf(“********”); } } komut(lar); HUNROBOTX 2012 18

DİZİLER � Dizi, aynı tipdeki verilerin birlikte tutulduğu yapıdır. � Dizilerin ilk elemanının index

DİZİLER � Dizi, aynı tipdeki verilerin birlikte tutulduğu yapıdır. � Dizilerin ilk elemanının index i 0 dan baslar , eleman_sayisi-1 en büyük indexidir. � Dizi tanımı dizi_veri_tipi dizi_ismi[eleman_sayısı]; int array[5]; Dizelere ulaşım için for döngüsü yapılır. for(i=0; i<eleman_sayısı; i++) printf(“array[%d]=%d n”, i, eleman); for(i=0; i<5; i++) printf(“array[%d]=%d n”, i, array[i]); HUNROBOTX 2012 19

Diziye Değer Atama Dizi tanımı yaptıktan hemen sonra dizi_veri_tipi dizi_ismi[eleman_sayısı]={elemanlar}; int array[5]={1, 2, 3,

Diziye Değer Atama Dizi tanımı yaptıktan hemen sonra dizi_veri_tipi dizi_ismi[eleman_sayısı]={elemanlar}; int array[5]={1, 2, 3, 4, 5}; • Dizi tanımından ayrı dizi_ismi[eleman_sayısı]={elemanlar}; array[5]={1, 2, 3, 4, 5}; • Tek tek dizi_ismi[eleman_1]={1_eleman}; array[0]=1; array[1]=2; array[2]=3; array[3]=4; array[4]=5; HUNROBOTX 2012 20

Soru Vakti HUNROBOTX 2012

Soru Vakti HUNROBOTX 2012