1 / 20

Diziler (Arrays)

Diziler (Arrays). Diziler. Dizi: İçerisinde birden fazla aynı tip veriyi depolayabilen değişkendir. Diziler tanımlanırken dizinin adı, boyutu ve elemanların hangi tipte olacağı belirtilmelidir. int sayilar[ 3 ]; char isim [ 10 ];. Tip. Dizi Adı. Boyut. Sayilar. Dizilerin Kullanımı.

bono
Download Presentation

Diziler (Arrays)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Diziler (Arrays)

  2. Diziler • Dizi: İçerisinde birden fazla aynı tip veriyi depolayabilen değişkendir. • Diziler tanımlanırken dizinin adı, boyutu ve elemanların hangi tipte olacağı belirtilmelidir. intsayilar[3]; char isim [10]; Tip Dizi Adı Boyut

  3. Sayilar Dizilerin Kullanımı • Dizilerde her elemanın bir numarası vardır. (indis) • Hangi elemana ulaşılacaksa o elemanın numarası mutlaka belirtilmelidir. • intsayilar[4]; sayilar[0]=3;sayilar[1]=5;sayilar[2]=6;printf (“Bir sayı giriniz:\n”); scanf(“%d”,&sayilar[3]);

  4. Örnek void main(){ intsayilar[4]; sayilar[0]=3; sayilar[1]=5; sayilar[2]=6; printf (“Bir sayı giriniz:\n”); scanf(“%d”,&sayilar[3]); for(int i=0;i<4;i++) printf(“%d\n”,sayilar[i]); }

  5. Örnek void main(){ intsayi[5]; for(int i=0; i<5; i++) { sayi[i]= i * i; } for(int i=0;i<5;i++) printf(“%d\n”,sayi[i]); } Ekran çıktısı: 0 1 4 9 16

  6. 1 2 2 4 3 6 8 4 5 10 6 12 7 14 8 16 18 9 20 10 Örnekler • 1 ile 10 arasındaki sayıları diziye yerleştiren programı yazınız. • 1 ile 20 arasındaki çift sayıları diziye yerleştiren programı yazınız.

  7. Örnekler 1- Girilen 10 tane sayıyı bir dizide saklayarak ortalamasını bulan program. 2- Girilen n tane sayidan her  3. siradaki sayiyi toplayip bu sayilarin aritmetik ortalamasini bulan program (En fazla 100 sayı girilebilir). 3- Girilen 15 tane sayıyı bir dizi içerisine yerleştiren ve bu 15 sayıdan en büyük olanı dizi içerisinden bularak ekrana yazdıran programı yazınız. 4- Girilen 15 tane sayıyı bir dizi içerisine yerleştiren ve bu sayıların kaç tanesinin pozitif sayı olduğunu bulan programı yazınız.

  8. İki Boyutlu Diziler • Mesela bir satranç oyunundaki 64 bölgeyi nasıl tanımlarız? Bunun için iki boyutlu bir array kullanırız... intSatranc[8][8];

  9. Satranc 1,1 1,2 1,3 1,4 1,5 1,6 1,7 1,8 2,1 2,2 2,3 2,4 2,5 2,6 2,7 2,8 3,1 3,2 3,3 3,4 3,5 3,6 3,7 3,8 4,1 4,2 4,3 4,4 4,5 4,6 4,7 4,8 Satranc(6,3) Satranc(3,7) 5,1 5,2 5,3 5,4 5,5 5,6 5,7 5,8 6,1 6,2 6,3 6,4 6,5 6,6 6,7 6,8 7,1 7,2 7,3 7,4 7,5 7,6 7,7 7,8 8,1 8,2 8,3 8,4 8,5 8,6 8,7 8,8 İki Boyutlu Diziler • intSatranc [8][8];

  10. Örnekler 1- 5 öğrencinin not bilgilerini (not1, not2) kullanıcıdan alıp öğrencinin ortalamalarıyla beraber notlarını ekrana yazan bir program yazınız. 2- 5 kişilik bir öğrenci grubu için 8 adet test uygulansın. Bunların sonuçlarını kullanıcıdan alıp ekrana yazdıran programı yazınız. 3- Bir zar 6000 kez atılıyor, her bir sayıdan kaçar kez geldiğini bulan program yazınız.

  11. Yapısal Veri Tipleri (Struct, Union)

  12. Struct • Birden fazla farklı veri tipini tek bir yapı içerisinde tutabiliriz. Örnek: int gun; int ay; int yil; struct Tarih{ int gun; int ay; int yil; }; struct Tarih bugun, dgunu; struct Tarih{ int gun; int ay; int yil; } bugun, dgunu;

  13. Struct struct kisiselBilgi{ int tel; char adres[50]; char sehir[15]; }; struct Musteri{ char adi[15]; char soyadi[15]; struct kisiselBilgi kBilgi; }; struct Tarih{ int gun; int ay; int yil; }; struct nufusBilgi{ char*ad, *soyad, *dog_yeri; struct Tarih dog_tarih; } eleman; eleman.ad = “Ozlem”; eleman.soyad = “Aktaş”; eleman.dog_tarih.gun=...; eleman.dog_tarih.ay=...; eleman.dog_tarih.yil=...;

  14. Örnekler 1- Kullanıcıdan bugünün tarihini alarak kaydeden ve ekrana yazan program. 2- Kullanıcıdan 5 musteri bilgisini alarak kaydeden, bu bilgileri düzgün şekilde ekrana yazan programı yazınız. struct Musteri{ char adi[15]; char soyadi[15]; struct kisiselBilgi{ int tel; char adres[50]; char sehir[15]; }; };

  15. Fonksiyonlar

  16. Alt Programlar (Procedures) Büyük programları daha etkin bir şekilde yazabilmek için programlar alt programlara bölünür. void AltprogramAdı (Parametreler) { Yerel (lokal) tanımlamalar İfadeler (komutlar) } Örnek: Toplama ve sonucu ekrana yazma altprogramı void topla_yaz(int a, int b, int c){ int toplam=a+b+c; printf(“Toplam = %d\n”,toplam); } topla_yaz(a, b, c);

  17. Örnek Dört işlemin altprogram ile yapılması (sonuc değişkeni global olarak tanımlanacaktır) • Topla(a,b) • Cikar(a,b) • Carp(a,b) • Bol(a,b)

  18. Fonksiyonlar DönüşTipi FonksiyonAdı (Parametreler) { Yerel (lokal) tanımlamalar İfadeler (komutlar) } Örnek: Toplama fonksiyonu int topla(int a, int b, int c){ int toplam=a+b+c; return toplam; } toplam_m = topla(a, b, c);

  19. 1- Kullanıcının girdiği 3 sayıyı toplayıp ekrana sonucu yazan programı yazınız. 2- Kullanıcıdan uzunluk, genişlik ve yükseklik bilgilerini alarak hacim hesabı yapan ve ekrana sonucu yazan programı yazınız. 3- Kullanıcının girdiği 2 sayıdan büyük olanı fonksiyon kullanarak bulan programı yazınız. Örnek

  20. Örnek • Dört işlemin fonksiyon kullanılarak yapılması int x= 5; void a(){ int x=7; printf (“ %d ”,x); { int x=9; printf (“ %d ”,x); } printf (“ %d ”,x); } Ekran Çıktısı: 5 7 9 7 5 void main(){ • printf (“ %d ”,x); • a(); • printf (“ %d ”,x); }

More Related