Array multidimensi
Termasuk bagian Dasar-Dasar dalam perjalanan C di Coddy. Pelajaran 56 dari 63.
array multidimensi adalah array yang berisi array. Di C, kamu dapat membuat array 2D (array multidimensi yang paling umum), yang pada dasarnya berupa tabel dengan baris dan kolom.
Deklarasikan array 2D:
int matrix[3][4];Ini membuat array 2D dengan 3 baris dan 4 kolom.
Kamu bisa menginisialisasi array 2D saat mendeklarasikannya:
int matrix[3][4] = {
{1, 2, 3, 4}, // Baris pertama
{5, 6, 7, 8}, // Baris kedua
{9, 10, 11, 12} // Baris ketiga
};Untuk mengakses elemen dalam array 2D, gunakan dua indeks:
int value = matrix[1][2]; // Mengakses baris 1, kolom 2 (nilainya akan menjadi 7)Untuk mengubah elemen dalam array 2D:
matrix[0][3] = 100; // Mengubah elemen pada baris 0, kolom 3 menjadi 100Kamu juga bisa menggunakan perulangan bersarang untuk mengakses semua elemen dalam array 2D:
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n"); // Baris baru setelah setiap baris tabel
}Tantangan
MudahBuat fungsi bernama printDiagonal yang menerima array persegi 2D (jumlah baris sama dengan jumlah kolom) dan mencetak elemen pada diagonal utama (dari kiri atas ke kanan bawah).
Fungsi tersebut harus:
- Menerima array integer dan ukurannya sebagai parameter.
- Mencetak setiap elemen pada diagonal utama (indeks baris sama dengan indeks kolom).
- Memisahkan setiap elemen dengan spasi.
Contohnya, untuk array berikut:
1 2 3 4 5 6 7 8 9
Fungsi tersebut harus mencetak: 1 5 9
Coba sendiri
#include <stdio.h>
// Fungsi untuk mencetak elemen diagonal matriks persegi
void printDiagonal(int matrix[][100], int size) {
// Tulis kodemu di sini
}
int main() {
int size;
scanf("%d", &size);
int matrix[100][100];
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
scanf("%d", &matrix[i][j]);
}
}
printDiagonal(matrix, size);
return 0;
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
2Variabel
Tipe DataBilangan BulatFloat - DoubleKarakterBooleanKonstantaDasar printfAturan Penamaan VariabelKonversi Tipe Bagian 1Konversi Tipe Bagian 2Tantangan Rangkuman3Operator
Operator AritmetikaOperator ModuloInkrementasi/PenurunanOperator PenugasanOperator RelasionalOperator Logika Bagian 1Operator Logika Bagian 2Operator Logika Bagian 3Tantangan RangkumanLatihan sendiri: Compiler C online