Pada bahasa C, Array merupakan tipe data terstruktur yang digunakan untuk menyimpan sekumpulan data dalam satu tempat. Bagian yang menyusun array disebut elemen array, yang masing-masing elemen dapat diakses tersendiri melalui indeks array. Indeks array selalu dimulai dari angka nol (0). Ukuran array akan bergantung dari banyaknya data yang ditampung di dalamnya.
Cara Membuat Array pada Bahasa C
Pada bahasa C, array kita harus menentukan panjang sebuah array. Struktur dasarnya adalah sebagai berikut :
tipe_data nama_variabel [jumlah_element]
Contoh :
// membuat array kosong dengan tipe data integer dan panjang 5
int nama_array[5];
// membuat array dengan tipe data integer yang langsung diisi
int nama_array[3] = {1, 2, 5}
Mengambil Data dari Array pada bahasa C
Pada bahasa C, Array akan menyimpan sekumpulan data dan memberinya nomer indeks agar mudah diakses. Indeks array selalu dimauli dari nol 0.
Misalkan kita punya array seperti ini
char huruf[4] = {'a', 'b', 'c', 'd'};
Bagaimana cara mengambil huruf ”b” ?
Jawaban:
Indeks array selalu dimulai dari nol, jadi untuk mengambil data ”b” sendiri bukan dari angka ke 2, melainkan dari angka ke 1, sehingga kita bisa menuliskan seperti ini :
huruf[1]
Contoh kode program :
#include <stdio.h>
void main(){
char huruf[4] = {'a', 'b', 'c', 'd'};
printf("Huruf: %c\n", huruf[1]);
}
Hasilnya :
Mengisi Ulang Data pada Array
Isi data pada array juga dapat di isi ulang dengan cara seperti ini:
huruf[1] = 'm';
Maka isi array huruf pada indeks ke-1 akan bernilai ‘m’.
Contoh :
#include <stdio.h>
void main(){
// isi awal array
char huruf[4] = {'a', 'b', 'c', 'd'};
// mengubah isi array
huruf[1] = 'm';
printf("Huruf: %c\n", huruf[1]);
}
Hasilnya :
Menggunakan Perulangan dan Array
Kita dapat menggunakan perintah printf() untuk mencetak semua isi array secara berulang.
Contoh :
#include <stdio.h>
void main(){
// membuat array kosong
int nilai[4];
// mengisi data array
nilai[0] = 12;
nilai[1] = 13;
nilai[2] = 14;
nilai[3] = 15;
// mencetak isi data array
printf("Nilai pertama: %d\n", nilai[0]);
printf("Nilai kedua: %d\n", nilai[1]);
printf("Nilai ketiga: %d\n", nilai[2]);
printf("Nilai keempat: %d\n", nilai[3]);
}
Hasilnya :
Tapi jika isi array-nya ada banyak, tentu akan lebih merepotkan karena kita harus menulisnya berulang. Untuk itu, kita bisa memanfaatkan perulangan untuk mencetaknya.
Contoh :
#include <stdio.h>
void main(){
// membuat array kosong
int nilai[4];
// mengisi data array
nilai[0] = 12;
nilai[1] = 13;
nilai[2] = 14;
nilai[3] = 15;
int length = sizeof(nilai) / sizeof(*nilai);
for (int i = 0; i < length; i++){
printf("Nilai pertama: %d\n", nilai[i]);
}
}
Keterangan :
Kita menggunakan fungsi ”sizeof” untuk membuat perulangan sesuai dengan ukuran atau jumlah isi array.
Namun kita juga dapat memberikan batas maksimal perulangannya secara manual, misalnya i < 5. Contoh :
for(int i = 0; i < 5; i++){
printf("Nilai: %d\n", nilai[i]);
}
Hasilnya :
Mengambil Panjang Array pada Bahasa C
Pada contoh sebelumnya, kita sudah menggunakan fungsi ”sizeof” untuk membuat perulangan sesuai dengan ukuran atau jumlah isi array. Pada kode program itu, sebenarnya kita sudah mengambil panjang array dengan membagi besar array dan ukuran pointernya
int length = sizeof(nilai) / sizeof(*nilai);
Jadi, kita tinggal menambahkan fungsi printf untuk menampilkan jumlah atau banyaknya isi array tersebut.
printf("Jumlah isi array : %d\n", length);
Contoh kode program :
#include <stdio.h>
void main(){
// membuat array kosong
int nilai[4];
// mengisi data array
nilai[0] = 12;
nilai[1] = 13;
nilai[2] = 14;
nilai[3] = 15;
// mengambil banyaknya isi array
int length = sizeof(nilai) / sizeof(*nilai);
printf("Jumlah isi array : %d\n", length);
// membuat perulangan array
for (int i = 0; i < length; i++){
printf("Nilai: %d\n", nilai[i]);
}
}
Hasilnya :
Menghitung Nilai Rata-rata Array
Setelah kita sudah mengetahui cara menggunakan perulangan dan mengambil panjang atau jumlah isi array pada bahasa C, maka selanjutnya kita akan mencoba menghitung nilai rata-rata array. Adapun caranya adalah dengan memasukkan rumus rumus nilai rata-rata di bawah ini ke dalam kode program.
Rumus :
Dimana :
x̄ = Nilai Rata-Rata
X 1,2,3…n = Jumlah Seluruh Data
n = Banyaknya Data
Contoh program :
Sebagai contoh disini kita akan membuat program sederhana untuk menghitung nilai rata-rata mahasiswa per semester.
#include <stdio.h>
void main(){
// membuat array dari nilai mahasiswa
int nilai_semester[4];
// mengisi data array nilai mahasiswa
nilai_semester[0] = 85;
nilai_semester[1] = 70;
nilai_semester[2] = 45;
nilai_semester[3] = 60;
printf("=== Program Mencari Nilai Rata-rata ===\n");
/*
mengambil nilai "n" atau Banyaknya Data nilai
Banyaknya Data nilai
length itu sama dengan "n"
*/
int length = sizeof(nilai_semester) / sizeof(*nilai_semester);
int sum = 0;
printf("Jumlah nilai yang diambil : %d\n", length);
// membuat perulangan array nilai mahasiswa
for(int i = 0; i < length; i++){
sum += nilai_semester[i];
printf("Nilai : %d\n", nilai_semester[i]);
}
// Rumus rata-rata
float rata_rata = (float)sum / (float)length;
printf("Rata-rata nilai semester: %.2f\n", rata_rata);
}
Hasilnya :
Array Multi Dimensi
Pada contoh-contoh program array pada bahasa C sebelumnya adalah array satu dimensi. Array multi dimensi adalah array yang lebih dari satu dimensi. Namun yang sering digunakan adalah array dimensi dua dan tiga. Array multi dimensi biasanya digunakan untuk membuat matriks.
Bentuk struktur array multi dimensi dimensi:
Type_data nama_var[jumlah_elemen1][jumlah_elemen2];
Contoh program :
#include <stdio.h>
main(){
int data[4][5] = {{11,12,13,14,15}, {16,17,18,19,20}, {21,22,23,24,25}, {26,27,28,29,30}};
int a,b;
printf("====== Program Array Multi Dimensi ======\n\n");
for(a=0;a<4;a++){
for(b=0;b<5;b++){
printf("%d\t",data[a][b]);
}
printf("\n");
}
{
printf("===================================\n");
printf("nilai pada indeks 2,1 adalah : %d",data[2][1]);
printf("\n");
}
}
Hasilnya :
Keterangan Kode :
Awalnya kita mendeklarasikan jumlah_elemen untuk data array.
Int data[4][5]
Setelah itu kita mengisi data atau inisialisasi pada array.
{{11,12,13,14,15}, {16,17,18,19,20}, {21,22,23,24,25}, {26,27,28,29,30}}
Lalu kita membuat nama variabel ”a & b” pada tipe data integer
int a,b;
Disini kita memanfaatkan perulangan for untuk mencetak isi data array dari variabel ”a & b”.
for(a=0;a<4;a++){
for(b=0;b<5;b++){
printf("%d\t",data[a][b]);
Terakhir, kita menuliskan jumlah indeks yang akan diambil pada data array.
data[2][1]
Artinya baris yang diambil adalah baris ke 3 nomor 2. dan hasil outputnya adalah 22.
Begitulah pembahasan mengenai struktur data array bahasa C. Artikel selanjutnya kita akan membahas Fungsi atau function pada bahasa C.
Semoga bermanfaat …