Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
YayınlayanNuray Şipal Değiştirilmiş 9 yıl önce
1
Bölüm 2 C Diline Genel Bir Bakış
2
1/29 /* Örnek1- toplama.c Klavyeden girilen iki tamsayının toplamını bulup ekrana yazar. Erkan Yasan 05.10.2005 */ #include /* printf, scanf işlevleri için başlık kütüğü (header file)*/ int main(void) { int birinciSayi, /* Toplanacak birinci sayı */ ikinciSayi; /* Toplanacak ikinci sayı */ double toplam; /* Birinci sayıyı kullanıcıdan al*/ printf("Toplami bulunacak 1. sayiyi giriniz: "); scanf("%d", &birinciSayi); /* İkinci sayıyı kullanıcıdan al */ printf("Toplami bulunacak 2. sayiyi giriniz: "); scanf("%d", &ikinciSayi); /* Sayıların toplamını bul */ toplam = birinciSayi + ikinciSayi; /* Toplamı ekrana yazdır */ printf("Girilen %d ile %d sayilarinin toplami: %f \n", birinciSayi, ikinciSayi, toplam); return (0); } #includeÖn işleyici komutu (preprocessor directive) stdio.hStandart başlık kütüğü (header file) /*... */Açıklama satırı (comment line) voidAyrılmış sözcük (reserved word) birinciSayiDeğişken (variable) printfStandart tanımlayıcı (identifier) = + Özel simgeler (special symbols) Bir C Programının Bileşenleri
3
2/29 Bir C Programının Genel Yapısı önişleyici komutları main işlevi başlığı { bildirim (declarations) kesimi uygulama kesimi }
4
3/29 Örnek Önişleyici Komutları #include #define PI 3.14159 #define AYLIK_ENFLASYON 10
5
4/29 main İşlevi Başlığı ve Gövdesi int main (void) { /* Başlık */... /* Gövde */ }
6
5/29 ANSI C Ayrılmış Sözcükleri autodoubleintstruct breakelselongswitch caseenumregistertypedef charexternreturnunion constfloatshortunsigned continueforsignedvoid defaultgotosizeofvolatile doifstaticwhile
7
6/29 Standart Tanımlayıcılar Ayrılmış sözcükler gibi, C’de özel anlamları olan tanımlayıcılar Örnek; printf scanf
8
7/29 Kullanıcı Tanımlayıcıları (User Defined Identifiers) Sabitler (constants) #define PI 3.14159 #define AYLIK_ENFLASYON 10 Değişkenler (variables) int birinciSayi, ikinciSayi; double toplam; char klavyedenGirilenKarakter;
9
8/29 Kullanıcı Tanımlayıcılarının Özellikleri 1.Bir tanımlayıcı (değişken ya da sabit) harf ya da rakam (ve altçizgi karakteri _ ) içerir. 2.Bir tanımlayıcı rakam ile başlayamaz. 3.C ayrılmış sözcükleri tanımlayıcı olarak kullanılamaz.
10
9/29 Kullanıcı Tanımlayıcıları GeçerliGeçersiz uzunluk1sayi AYLIK_ENFLASYONint Doubledouble maincap*Pi-Sayisi denemeVerisi_123Ali’ninNumarasi
11
10/29 ANCI C Tamsayı Veri Türleri TürAralık int-32.767... 32.767 short-32.767... 32.767 unsigned short0... 65.535 unsigned0... 65.535 long-2.147.483.647... 2.147.483.647 unsigned long0... 4.294.967.295
12
11/29 Tamsayı Veri Örnekleri 12-5+32767-300000
13
12/29 ANCI C Kayan Noktalı (floating point) Veri Türleri TürYaklaşık Aralık (pozitif) float10 -37... 10 38 double10 -307... 10 308 long double10 -4931... 10 4932
14
13/29 double Veri Örnekleri VeriEşdeğer Karşılığı 0.00000123 6.02e5 3.14159 27e3 1.23e-6 602000.0 3.14159e0 27000.0
15
14/29 Aktarım Komutları x = y; x = x + y;x += y; x = -y;x = -+-+-+y; x = y + z – a + -b * c * -d % e; x = 50 + 32 – 8 + -2 * 3 * -2 % 11; x = (50 + 32 – 8) + ((-2) * 3 * (-2) % 11); -2 * 3*% 1150 + 32 – 8+ x =
16
15/29 printf Komutu int ara1, /* Öğrencinin 1. ara sınav notu */ ara2; /* Öğrencinin 2. ara sınav notu */ double ortalama; /* Öğrencinin 2 ara sınav notu ortalaması*/... printf(“Ogrencinin 1. sinav notunu giriniz: ”);... printf(“Ogrencinin 2. sinav notunu giriniz: ”);... printf(“1. sinav: %d, 2. sinav: %d, ortalama: %f”, ara1, ara2, ortalama);
17
16/29 Sayısal Değerlerin Biçimlendirilmesi (formatting) Tamsayı Değerlerin Biçimlendirilmesi double Değerlerin Biçimlendirilmesi
18
17/29 Tamsayı Değerlerin Biçimlendirilmesi printf(“1. sinav: %5d, 2. sinav: %1d \n”, ara1, ara2);... ara1 = 55; ara2 = 88;... 1. sinav: █ █ █55, 2. sinav: 88 _
19
18/29 double Değerlerin Biçimlendirilmesi DeğerplaceholderÇıktı Görünümü 3.14159%8.5f█3.14159 9.46728%4.4f9.4673 9.46728%1.3f9.467.12345%6.4f0.1235 3.14159%7.1f█ █ █ █ 3.1 -5.12345%9.3f█ █ █ -5.123 -5.12345%.4f-5.1235 -.999%7.2f█ █ -1.00
20
19/29 Standart Giriş Aygıtından Veri Alma int i; double d; char c;... scanf(“%d %lf %c”, &i, &d, &c);...
21
20/29 ANSI C Açıklama Satırı /* toplama.c Derleme Ortamı:...... yapar */... int i; /* Deneme verisi */
22
21/29 Tamsayı Bölme / Type Casting (1) /*...... */ #include int main(void) { int ogrenciSayisi,/* Dersi alan toplam öğrenci sayısı */ toplamNot;/* Notların toplamı */ double ortalama;/* Notların ortalaması */ ogrenciSayisi = 5; toplamNot = 12; ortalama = toplamNot / ogrenciSayisi; printf("%d ogrencinin ortalamasi : %.2f", ogrenciSayisi, ortalama); } 5 öğrencinin ortalaması : 2.00
23
22/29 Tamsayı Bölme / Type Casting (2) /*...... */ #include int main(void) { int ogrenciSayisi,/* Dersi alan toplam öğrenci sayısı */ toplamNot;/* Notların toplamı */ double ortalama;/* Notların ortalaması */ ogrenciSayisi = 5; toplamNot = 12; ortalama = (double) toplamNot / (double) ogrenciSayisi; printf("%d ogrencinin ortalamasi : %.2f", ogrenciSayisi, ortalama); } 5 öğrencinin ortalaması : 2.40
24
23/29 Uygulama Bir araç, U uzunluktaki 3 aşamalı bir parkurun %x’lik birinci aşamasını V1, %y’lik ikinci aşamasını V2 ve %z’lik üçüncü aşamasını da V3 ortalama hızıyla tamamlıyor. Bu aracın tüm parkur boyunca ulaştığı ortalama hızı bulup uygun şekilde ekrana yazan bir programı, tüm geliştirme adımlarıyla birlikte yazınız. U, x, y, V1, V2, V3 değerleri kullanıcıdan alınacaktır.
25
24/29 ANSI C İşleçleri İşleçTürüÖncelik İşlev Çağrılarıyüksek ! + - &Tekli- aritmetik. * / %İkili- aritmetik. + –İkili- aritmetik. >=İlişkisel. == !=Eşitlik. &&Mantıksal (and). ||Mantıksal (or). =Aktarmadüşük
26
25/29 Mantıksal İşleçler aba && b 111 100 010 000 aba || b 111 101 011 000 a!a 10 01
27
26/29 İşleçlerle Örnekler x, y ile z’nin belirlediği (kapalı) aralığın içindedir (y’den büyük ya da ona eşit ve z’den küçük ya da ona eşittir) z <= x && x <= y x, y ile z’nin belirlediği (açık) aralığın dışındadır x y!(z <= x && x <= y) x’in değeri 5.2 ya da 8.9’dur x == 5.2 || x == 8.9
28
27/29 DeMorgan Kuralı (a || b)` = (a` && b`) (a && b)` = (a` || b`)
29
28/29 DeMorgan Kuralı- Örnek Bir iş için başvuru koşulu: Yaşı 18 ile 35 arasında olan (18 ve 35 dahil) erkek, lise ya da üniversite mezunları 18 <= yas && yas <= 35 && cinsiyet == ‘E’ && (okul == ‘L’ || okul == ‘U’) Geçersiz başvurular yas 35 || cinsiyet != ‘E’ || (okul != ‘L’ && okul == ‘U’)
30
29/29 Koşullu Aktarım if (dersNotu > 49) gecer = 1; else gecer = 0; gecer = dersNotu > 49 ? 1 : 0;
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.