Page 186 - PEMROGRAMAN DASAR MENGGUNAKAN C
P. 186

8.5.  Struktur dan Array

                      Pada umumnya para programmer baru merasa bingung dengan istilah struktur dari array
                      (structure of array) dan array dari struktur (array of structure). Untuk itu, pada bagian
                      ini kita akan membahas perbedaan antara keduanya.

                      8.5.1.  Struktur dari Array

                      Struktur dari array adalah suatu struktur yang salah satu atau semua anggotanya bertipe
                      array. Sebagai contoh, perhatikan definisi struktur berikut.


                      struct SISWA {
                         char NIM[8];
                         char nama[25];
                         float nilai[2];
                         char nilai_indeks;
                      };


                      Pada  sintak  di  atas  terlihat  bahwa  struktur  SISWA terdiri  dari  empat  buah  anggota.
                      Anggota  pertama  dan  kedua  merupakan  anggota  yang  bertipe  array  dari  karakter
                      (string).  Anggota  ketiga  merupakan  array  dari  tipe  float  yang  berguna  untuk
                      menampung  dua  buah  nilai,  yaitu  nilai  UTS  dan  UAS.  Sedangkan  anggota terakhir
                      bertipe char yang akan digunakan untuk menampung nilai indeks (A, B, C, D atau E).
                      Untuk  lebih  memahaminya,  berikut  ini  implementasi  dari  struktur  di  atas  ke  dalam
                      sebuah program.


                      #include <stdio.h>

                      typedef struct {
                         char NIM[8];
                         char nama[25];
                         float nilai[2];
                         char nilai_indeks;
                      } SISWA;

                      /* Membuat fungsi untuk menentukan nilai indeks */
                      char TentukanIndeks(float nilai) {
                         char indeks;
                         if (nilai > 80) {
                           indeks = TAT;
                         } else {
                           if ((nilai > 70) && (nilai <= 80)) {
                              indeks = TBT;
                           } else {
                              if ((nilai > 60) && (nilai <= 70)) {
                                indeks = TCT;
                              } else {
                                if ((nilai > 50) && (nilai <= 60)) {
                                   indeks = TDT;
   181   182   183   184   185   186   187   188   189   190   191