TEMEL C PROGRAMLAMA DERSİ 2

Preview:

DESCRIPTION

TEMEL C PROGRAMLAMA DERSİ 2. HAZIRLAYAN GÖKHAN YALINIZ. 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. - PowerPoint PPT Presentation

Citation preview

HUNROBOTX 2012 1

TEMEL C PROGRAMLAMA DERSİ 2

HAZIRLAYANGÖKHAN YALINIZ

HUNROBOTX 2012 2

OPERATÖRLERDegişkenler veya sabitler üzerinde daha önceden belirlendiği şekilde işlem yaptıran sembollerdir.

Aritmetik OperatörlerDeğ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 3

Karşılaştırma ve Mantıksal OperatörlerDeğ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>=yx, y den büyük yada eşit mi?

<= küçük-eşittir x<=yx, 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<yx 2 den büyük VE y den küçük mü?

|| mantıksal VEYA x>2 || x<yx 2 den büyük VEYA y den küçük mü?

HUNROBOTX 2012 4

Atama OperatörleriDeğişkenlere bir deger atamak için kullanılır.

Operator Açıklama Ornek Anlamı

= atama a=2; 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 5

Operatörlerde Öncelik Sırası

HUNROBOTX 2012 6

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 7

ifTANIMI

if deyimi verilen şartın gerçekleşmesine bağlı olarak komut veya komutların çalışmasını sağlar.

YAPISI

if(sart) { komut(lar); }

ÖRNEK

if(sayi>0) { printf(“Sayi pozitiftir\n”);

}

HUNROBOTX 2012 8

İf elseTANIMI

if else deyimi parantez içindeki şartın gerçekleşme ve gerçekleşmeme durumuna göre ayrı ayrı komut(lar) yerine getirir.

YAPISI

if (sart) { komut(lar); }

else { komut(lar); }

ÖRNEK

if(sayi%2==0) { printf(“Cift\n”); }else { printf(“Tek\n”); }

HUNROBOTX 2012 9

İç içe if elseTANIMI

İç içe if else deyimini sartın 2den fazla olduğu durumlarda tercih edilir

YAPISI

if (sart_1) { komut(lar); } else if( sart_2) { komut(lar); } . . .

ÖRNEK

if (sayi<0)printf(“Sayi negatiftir\n”); else if (sayi>0)printf(“Sayi pozitiftir\n”); else printf(“Sayi 0 dır\n”);

HUNROBOTX 2012 10

switch case TANIMI

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

YAPISI

switch(degisken){ case sabit_1: komut(lar); break; case sabit_2: komut(lar); break; . . default: komut(lar);}

ÖRNEK

switch(kaynama_nokt){ case 100: printf(“su \n”); break; case 357: printf(“civa\n”); break; case 2660: printf(“altın\n”); break;

default:printf(“bulunamadı”);}

HUNROBOTX 2012 11

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 12

while TANIMI

Bu döngü belirtilen şart sağlandığı sürece istenen komutlar gerçekleştirilir.

YAPISI

while(sart) { komut(lar); }

ÖRNEK

int i=0; while(i<5) { printf(“i=%d\n”,i); i++; }

////////while(1){ printf(“Hunrobotx\n”);

}

HUNROBOTX 2012 13

do whileTANIMI

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

do { komut(lar); } while(sart);

ÖRNEK

int i=0;do { printf(“hunrobotx\n”);i++;} while(i<10);

HUNROBOTX 2012 14

forTANIMI

for deyiminde verilen şart doğru olduğu sürece belirlenen islemler tekrarlanır.Diğer döngülere göre yapısal farklılığı vardır.

YAPISI

for(atama;sart:adım){ komut(lar);

}

ÖRNEK

for(i=0;i<10;i++){ printf(“Hunrobotx\n”);

}

////////////for(;;){ printf(“Hunrobotx\n”);

}

HUNROBOTX 2012 15

FONKSİYONLARC dilinde kullanıla alt programlara fonksiyon

denilmektedir.Program alt porgramlara bölünerek hata bulma

hızı ve zaman kazacı arttırılır.TerimlerParametre: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 16

Foksiyon Prototipi: fon_veri_tipi fon_ismi (parametre_veri_tip(ler)i

parametre_ism(ler)i); int fon_1(int x,int y) ; int fon_2(int , int ); double fon_3(int ,);

• 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 17

Parametre Alıp Argüman DöndürenTANIMI

Bu fonksiyonlar ana fonksiyondan veri alır, gerekli işlemleri yapar,tekrar argüman tipine göre oluşan degeri fonksiyonun çagırıldığı yere gönderir.

YAPISI

fon_veri_tipi fon_ismi (par_veri_tipi par){ komut(lar);

return argumant;}

ÖRNEK

int toplama(int x,int y){ int sonuc; sonuc=x+y; return sonuc;}

HUNROBOTX 2012 18

Parametresiz Olup Argüman DöndürmeyenTANIMI

Bu fonksiyonlar ne ana fonksiyondan veri alır ne de veri gönderir.Bilgi verme anaclı kullanılabilir.*Kendi içinde veri işleyebilir.

YAPISI

void fon_ismi(void){ komut(lar);}

ÖRNEK

void tanıtım( ){printf(“Hunrobotx\n”);printf(“2012\n”);printf(“Temel C\n”);printf(“***************”);}

HUNROBOTX 2012 19

DİZİLERDizi,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 20

Diziye Değer AtamaDizi 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;

Soru Vakti

HUNROBOTX2012

Recommended