Chapter 8 of Database Application Development and Design - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

Chapter 8 of Database Application Development and Design

Description:

B l m 8 Diziler Dizi Tan m Dizi Elemanlar na De er Atama Diziler ve G stergeler 2-Boyutlu Diziler – PowerPoint PPT presentation

Number of Views:61
Avg rating:3.0/5.0
Slides: 23
Provided by: Michael3654
Category:

less

Transcript and Presenter's Notes

Title: Chapter 8 of Database Application Development and Design


1
Bölüm 8Diziler
Dizi Tanimi Dizi Elemanlarina Deger Atama Diziler
ve Göstergeler 2-Boyutlu Diziler
2
Dizi Tanimi
Degiskenler ayni anda tek bir deger tutabilen
temel degiskenler ve birden fazla deger
saklayabilen bilesik degiskenler olmak üzere
ikiye ayrilir. Temel degiskenler bellekte tek
bir hücreyi tanimlayip, içlerinde tek bir degeri
tutabilirler. Diziler ise ardarda siralanmis
bellek hücreleridirler. Diziler bu baglamda
bilesik degiskenlerdir ve bellekte ayni anda
birden fazla degerin saklamasini mümkün kilarlar.

3
Dizi Tanimi
veri_tipi dizi_ismi eleman_sayisi
Bellek Görüntüsü
4
Dizi Tanimi
Örnek int not4 int i
not020
20
not2 not010
20
30
i0 noti90 noti70
90
30
70
5
Dizi Elemanlarina Deger Atama
int a3,b scanf(d, b) a2b
veya
int a3 scanf(d, a2)
6
Dizi Elemanlarina Deger Atama
ÖrnekKullanicidan alinan 5 tamsayi degerini bir
dizide saklayan ve bu degerlerin ortalamasini
bulan bir program yazalim
include ltstdio.hgt int main(void) int
a5 int i,toplam double orta /Kullanici
degerlerinin dizide saklanmasi/ printf(Bes
tamsayi giriniz) for(i0ilt5i)
scanf(d,ai) /Toplam ve ortalamanin
bulunmasi/ toplam0 for(i0ilt5i)
toplamtoplamai orta toplam/5.0
printf(Ortalama5.2f,orta) return
(0)
7
Diziler ve Göstergeler
Bir dizi ismi aslinda dizinin ilk elemanini
gösteren sabit bir gösterge olarak yaratilir.
5
5
8
Diziler ve Göstergeler
Gösterge Gösterimi Dizi Gösterimi dizptr
5 diz0 5 (dizptr 1) 6 diz1
6 (dizptr 2) 7 diz2 7
. . . . . . (dizptr i) 8
dizi 8
9
Diziler ve Göstergeler
10
Diziler ve Fonksiyonlar
Dizi Elemaninin Fonksiyona Gönderilmesi
11
Diziler ve Fonksiyonlar
Dizinin Fonksiyona Gönderilmesi
int a510,20,30,40,50
a dizisini f() fonksiyonuna yollamak için
asagidaki komutu kullanmaliyiz. f(...,a,...)
Bu fonksiyonun basligi ise iki sekilde
olabilir. void f( ,int x5, ) void f( ,int
x, )
Fonksiyon parametresinde tanimlanan x dizisi
yoluyla yapilan degisiklikler, gerçek parametre
olan a dizisini etkileyecektir. Çünkü dizi ismi
dizinin ilk elemaninin yerini gösteren bir
göstergedir ve kaynak parametresi gibi
davranacaktir.
12
Diziler ve Fonksiyonlar
Örnek include ltstdio.hgt void f1(int b, int
n) int main(void) int i, a1,2,3 f1(a,3)
printf("\nmain fonksiyonu ") for(i0ilt3i)
printf("d", ai) return(0) void f1(int
b, int n) int i printf("f1 fonksiyonu
") for(i0iltni) printf("d", bi)
bi8
Çikti f1 fonksiyonu 123 main fonksiyonu 888
13
Diziler ve Fonksiyonlar
Dizi Yerine Gösterge Kullanimi
14
2-Boyutlu Diziler
Her elemani bir boyutlu dizi olan yapilara ise
çok boyutlu diziler denir. Bu bölümde matris veya
tablo olarak da bilinen 2-boyutlu dizilere
deginecegiz.
veri_tipi dizi_ismisatir_büyüklügüsütun_
büyüklügü
int not330
15
2-Boyutlu Diziler
2-Boyutlu Dizilere Deger Atama
scanf(d, not290)
not1190
Tanimlama Sirasinda Deger Atama
satir yönünde atama
16
2-Boyutlu Diziler
Tanimlama Sirasinda Deger Atama
17
2-Boyutlu Diziler
Tanimlama Sonrasinda Satir Yönünde Deger Atama
int a303 for(satir0 satirlt30 satir)
for (sutun0sutunlt3 sutun) asatirsutun0

18
2-Boyutlu Diziler
Tanimlama Sonrasinda Sütun Yönünde Deger Atama
int a303 for(sutun0 sutun lt3 sutun)
for (satir0satirlt30satir) asatirsutun0

...
...
19
2-Boyutlu Diziler
ÖrnekKullanicinin, 30 kisilik bir siniftaki her
ögrenci için 3er sinav notu girecegi ve her
sinav için sinif ortalamasinin ekranda
gösterilecegi bir program yaziniz. include
ltstdio.hgt int main(void) int not303
int i,j,toplam double orta /
Kullanicidan notlarin alinmasi/
for(i0ilt30i) printf(d. ogrenci
notlari,i1) for(j0jlt3j)
scanf(d, notij) /Her
sinavin ortalamasinin bulunmasi/
for(j0jlt3j) toplam0
for(i0ilt30i) toplamnotij
ortatoplam/30.0
printf(d. sinav ortalamasi 5.2f\n,j1,orta)
return (0)
20
2-Boyutlu Diziler
2-Boyutlu Diziler ve Fonksiyonlar
Dizi tanimi
int a231,2,3,4,5,6
Fonksiyon çagirma
f1( ,a, ) f1( , int b3, )
Fonksiyon basligi
21
2-Boyutlu Diziler
Örnek Ögrencilerin sinav ortalamalarini bulacak
bir program yazalim. Bu program için ortalama()
isimli bir fonksiyon kullanalim. ortalama()
fonksiyonu çagirildigi yerden 2-boyutlu bir dizi
alir, dizinin her satirinin ortalamasini bulup,
tek boyutlu bir baska dizide saklar ve
ortalamalari tutan bu tek boyutlu diziyi
çagirildigi yere geri döndürür.
include ltstdio.hgt void ortalama(int ogr_sa,int
sinav_sa, int not3,double
orta) double toplam int i,j for(i0iltogr_
sai) toplam0 for(j0jltsinav_saj)
toplamnotij ortaitoplam/3.0
22
2-Boyutlu Diziler
int main(void) int test303 int
i,j,toplam double averaj30 /Kullanicidan
notlarin alinmasi/ for(i0ilt30i) printf("
d. ogrenci notlari", i1) for(j0jlt3j)
scanf("d",testij) /Her ogrencinin
ortalamasinin bulunmasi/ ortalama(30,3,test,aver
aj) for(i0ilt30i) printf("d.ogrenci
ortalamasi5.2f\n",i1, averaji)
return (0)
Write a Comment
User Comments (0)
About PowerShow.com