logo

C'de İki Boyutlu Dizi

İki boyutlu dizi, dizilerden oluşan bir dizi olarak tanımlanabilir. 2B dizi, satır ve sütunların toplamı olarak temsil edilebilecek matrisler olarak düzenlenir. Bununla birlikte, ilişkisel bir veritabanına benzeyen veri yapısını uygulamak için 2B diziler oluşturulur. Gerektiğinde herhangi bir sayıda fonksiyona aktarılabilecek veri yığınını tek seferde tutma kolaylığı sağlar.

ilk dizüstü bilgisayar

C'de iki boyutlu Dizinin Bildirilmesi

2B diziyi bildirme sözdizimi aşağıda verilmiştir.

 data_type array_name[rows][columns]; 

Aşağıdaki örneği düşünün.

 int twodimen[4][3]; 

Burada 4 satır sayısı, 3 ise sütun sayısıdır.

C'de 2D Dizinin Başlatılması

1D dizide, bildirim ve başlatma aynı anda yapılıyorsa dizinin boyutunu belirtmemize gerek yoktur. Ancak bu 2 boyutlu dizilerde çalışmayacaktır. Dizinin en azından ikinci boyutunu tanımlamamız gerekecek. İki boyutlu dizi aşağıdaki şekilde bildirilebilir ve tanımlanabilir.

 int arr[4][3]={{1,2,3},{2,3,4},{3,4,5},{4,5,6}}; 

C'de iki boyutlu dizi örneği

 #include int main(){ int i=0,j=0; int arr[4][3]={{1,2,3},{2,3,4},{3,4,5},{4,5,6}}; //traversing 2D array for(i=0;i<4;i++){ for(j="0;j&lt;3;j++){" printf('arr[%d] [%d]="%d" 
',i,j,arr[i][j]); } end of j i return 0; < pre> <p> <strong>Output</strong> </p> <pre> arr[0][0] = 1 arr[0][1] = 2 arr[0][2] = 3 arr[1][0] = 2 arr[1][1] = 3 arr[1][2] = 4 arr[2][0] = 3 arr[2][1] = 4 arr[2][2] = 5 arr[3][0] = 4 arr[3][1] = 5 arr[3][2] = 6 </pre> <h3>C 2D array example: Storing elements in a matrix and printing it.</h3> <pre> #include void main () { int arr[3][3],i,j; for (i=0;i<3;i++) { for (j="0;j&lt;3;j++)" printf('enter a[%d][%d]: ',i,j); scanf('%d',&arr[i][j]); } printf('
 printing the elements ....
'); for(i="0;i&lt;3;i++)" printf('
'); printf('%d	',arr[i][j]); < pre> <p> <strong>Output</strong> </p> <pre> Enter a[0][0]: 56 Enter a[0][1]: 10 Enter a[0][2]: 30 Enter a[1][0]: 34 Enter a[1][1]: 21 Enter a[1][2]: 34 Enter a[2][0]: 45 Enter a[2][1]: 56 Enter a[2][2]: 78 printing the elements .... 56 10 30 34 21 34 45 56 78 </pre> <hr></3;i++)></pre></4;i++){>

C 2D dizi örneği: Elemanların bir matriste saklanması ve yazdırılması.

 #include void main () { int arr[3][3],i,j; for (i=0;i<3;i++) { for (j="0;j&lt;3;j++)" printf(\'enter a[%d][%d]: \',i,j); scanf(\'%d\',&arr[i][j]); } printf(\'
 printing the elements ....
\'); for(i="0;i&lt;3;i++)" printf(\'
\'); printf(\'%d	\',arr[i][j]); < pre> <p> <strong>Output</strong> </p> <pre> Enter a[0][0]: 56 Enter a[0][1]: 10 Enter a[0][2]: 30 Enter a[1][0]: 34 Enter a[1][1]: 21 Enter a[1][2]: 34 Enter a[2][0]: 45 Enter a[2][1]: 56 Enter a[2][2]: 78 printing the elements .... 56 10 30 34 21 34 45 56 78 </pre> <hr></3;i++)>