DASAR PEMROGRAMAN BAHASA C 1. Sejarah Bahasa C
C adalah bahasa pemrograman. Bahasa C dirancang oleh Dennis M. Ritchie pada tahun 1972 di AT&T Bell Labs. Bahasa C dikembangkan dari bahasa BPCL (Basic Combined Programming Language ) dan bahasa B. Bahasa BPCL di kembangkan oleh Martin Richard pada tahun 1967 sebagai bahasa system operasi dan compiler. Ken Thompson pada tahun 1970 telah merancang bahasa B dengan memasukkan feature BPCL. Bahasa B dirancang untuk membuat system operasi UNIX/LINUX untuk computer DEC PDP-7 pada Bell Laboratories. Pada tahun 1978 Dennis Ritchie dan Brian W. Kerninghan mempublikasikan bahasa C melalui buku "The C Programming Language". Buku ini diterbitkan oleh Prentice Hall dan pada saat ini telah di terjemahkan dalam berbagai bahasa di dunia. Dan buku ini juga yang menjadikan legenda dan sejarah bagi bahasa C hingga di kenal dengan sebutan K&R C ((K=Kerninghan | R=Ritchie)). Seiring pesatnya perkembangan bahasa C, maka banyak vendor dan software developer mengembangkan bahasa C menurut versi mereka masing-masing. hal ini telah memicu ANSI (American National Standards Institute) pada tahun 1983 untuk membentuk komite teknis yang di sebut X3J11 untuk bekerja pada standard bahasa C yang bertujuan untuk membuat definisi standar bahasa C yang lebih modern dan komprehensif, dengan memperbaiki syntax dan grammar bahasa C. Pada akhir 1989 komite telah menyetujui standard ANSI untuk bahasa C yang kemudian terkenal dengan sebutan ANSI C.
Bahasa C termasuk high-level programming language. Pada kenyataannya bahasa C adalah salah satu bahasa yang paling populer untuk keperluan umum. Dikatakan high-level programming language karena kedekatannya dengan bahasa manusia. Semakin dekat dengan bahasa manusia, maka semakin tinggi bahasa tersebut. Namun, membawa pengaruh semakin berkurang kemampuan untuk mengakses langsung instruksi dasar bahasa mesin. Tapi tidak sedikit yang mengatakan bahasa C adalah medium-level programming language karena bahasa C juga sanggup berinteraksi langsung
dengan mesin. Lebih tepatnya bahasa C berada diantara High-level dan Lowlevel. Low-level language adalah bahasa mesin (contoh : assembler), bahasa yang sanggup berinteraksi langsung dengan mesin.
Mengapa mesti C ?
Bahasanya ringkas, hanya terdiri dari 32 keyword menurut standar ANSI Tersedia secara komersial untuk segala jenis komputer dan sistem operasi Terstruktur sekaligus fleksibel Programnya bekerja lebih cepat dan lebih tangguh, karena akses dekat ke sistem Kebanyakan pengembangan bahasa pemrograman ke depan meniru sintax C (C-LIKE = mirip C), seperti : Java, Javascript, C#, Php,…
Karakteristik bahasa C
Semua modul dalam bentuk fungsi (Perbedaan fungsi dan prosedur ?) Tidak mengenal space sebagai pemisah, kecuali antar instruksi yang berbeda Setiap statemen dipisahkan oleh semicolon (;) Kode programnya bersifat case-sensitif(membedakan huruf kapital dan huruf kecil). Keyword dan perintah-perintah dituliskan dengan huruf kecil
Struktur Dasar Program C
Setiap Program C terdiri dari satu atau lebih fungsi (function). Salah satu dari fungsi tersebut harus bernama main Struktur Program
[Deklarasi header/library] [ Deklarasi variabel/konstanta] [ Deklarasi fungsi] Fungsi utama
Format Penulisan deklarasi fungsi
return-type function_name([parameter])
{ [deklarasi variabel lokal] Statement Return(value) }
Contoh :
Int jumlah(int A,int B) { Int C; C=A+B; Return C; }
2. Unsur – unsur bahasa C
a. Variable Variable adalah suatu pengenal (identifier) yang digunakan untuk mewakili suatu nilai tertentu di dalam proses program. Berbeda dengan konstanta yang nilainya selalu tetap, nilai dari suatu variable bisa diubah-ubah sesuai kebutuhan. Nama dari suatu variable dapat ditentukan sendiri oleh pemrogram dengan aturan sebagai berikut : Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf. Bahasa C bersifat case-sensitive artinya huruf besar dan kecil dianggap berbeda. Jadi antara nim, NIM dan Nim dianggap berbeda. Tidak boleh mengandung spasi. Tidak boleh mengandung symbol-simbol khusus, kecuali garis bawah (underscore). Yang termasuk symbol khusus yang tidak diperbolehkan antara lain : $, ?, %, #, !, &, *, (, ), -, +, =dsb. Panjangnya bebas, tetapi hanya 32 karakter pertama yang terpakai.
Contoh Deklarasi Variable:
int x; // Deklarasi x bertipe integer char y, huruf, nim[10]; // Deklarasi variable bertipe char float nilai; // Deklarasi variable bertipe float double beta; // Deklarasi variable bertipe double int array[5][4]; // Deklarasi array bertipe integer
char *p; // Deklarasi pointer p bertipe char b. Tipe Data
Memory yang digunakan
c. Konstanta menyatakan nilai yang tetap. Berbeda variabel, suatu konstanta tidak dideklarasikan. Suatu nilai konstan yang telah dideklarasikan sebelumnya masih dapat diubahdengan menggunakan scanf(). Contoh : main() { float bil1,bil2; const float bil = 2.50;
clrscr(); printf ("Inputkan suatu bilangan :"); scanf("%f",&bil1); bil = 4.50; bil2 = bil1+bil2; printf("jumlah bilanagn ini dengan suatu kontanta :%f",bil2); } 3. System input output Fungsi Output
1. printf Fungsi printf() berguna untuk menampilkan semua jenis data baik number, string, atau karakter. Perhatikan contoh printf berikut ini : #include int main() { printf("Welcome to C lenguage \n"); } Fungsi di atas akan menampilkan (meng-output) huruf yang berada di dalam tanda petik. \n berfungsi untuk ganti baris dalam sebuah tampilan output. Tampilan program tersebut : Welcome to C lenguage 2. puts Ada cara lain untuk menampilkan suatu keluaran(output) ke layar yaitu dengan menggunakan fungsi puts. Fungsi puts() digunakan untuk menampilkan data yang bertipe string dan secara otomatis akan pidah baris (new line). Perhatikan penggunaan puts berikut ini: #include int main() { puts("Welcome to my life"); puts("t4f1d.blogspot.com "); }
Kini tidak perlu lagi mengguanakan “\n” untuk ganti baris baru. Tampilan
program : Welcome to my life t4f1d.blogspot.com
3.putchar Fungsi ini digunakan untuk menampilkan sebuah karakter saja dan tidak mengandung escape sequence “ \n”. perhatikan contoh berikut : #include int main() { Char a; printf("masukkan nama = ");scanf("%c",&a); printf("inisial \n"); putchar(a); } Fungsi putchar ini hanya bisa menampilkan satu buah karakter saja sehingga apapun nilai yang kita masukkan hanya karakter pertama yang akan ditampilkan. Berikut tampilan programnya (misal input nama "Randy"): masukkan nama = Randy inisial R Fungsi Input
1. scanf Jika fungsi scanf ini digunakan untuk membaca data dengan tipe array, karakter yang selanjutnya kita sebut dengan istilah string, maka fungsi ini hanya akan membaca data sampai ditemukan blank(space). Dengan demikian nilai setelah blank dianggap bukan lagi nilai dari variabel yang akan mengisi variabel tersebut. Fungsi scanf lebih cocok digunakan untuk data-data numerik. Fungsi scanf biasanya digunakan bersama-sama dengan fungsi printf. Perhatikan contoh berikut : #include int main() { char a[25]; int b; printf("a = ");scanf("%s",a); printf("b = ");scanf("%d",&b); printf("Data yang anda masukkan adalah \n"); printf("a = %s \n",a);
printf("b = %d \n",b); } Setiap kali memasukkan data harus diikuti dengan menekan ENTER. Berikut adalah tampilan setelah dijalankan. a = ada b = 11 Data yang anda masukkan adalah a = ada b = 11 fungsi scanf() berguna untuk meninput data baik berupa bilangan, karakter, ataupun kalimat secara terformat. Berikut format-format yang digunakan untuk scanf() : %c : Membaca sebuah karakter (character) %s : Membaca sebuah string (string) %i, %d : Membaca sebuah bilangan bulat (integer, desimal) %f, %e : Membaca sebuah bilangan pecahan (real, float) %o : Membaca sebuah bilangan octal %x : Membaca sebuah bilangan heksadesimal %u : Membaca sebuah bilangan tak bertanda
2. gets Jika kita menggunakan fungsi scanf untuk membaca data yang bertipe string, maka data tersebut hanya akan dibaca sampai ditemukan spasi. Misalnya nama “Matt Belammy” hanya kata “Matt” yang akan dibaca oleh program, sedangkan kata “Belammy” tidak terbaca karena sebelum kata
tersebut program telah menemukan spasi/blank(space) yang mengakibatkan data ke varibel yang menyimpan nama dianggap selesai. Untuk keperluan pemasukan data string yang panjang dipisahkan dengan spasi, bahasa C menyediakan fungsi gets. Perhatikan contoh berikut ini : #include main() { char nama[25]; char alamat[50];
printf("Nama Lengkap: ");gets(nama); printf("Alamat : ");gets(alamat); printf("\n"); printf("Data yang anda masukkan adalah\n"); printf("Nama : %s \n",nama); printf("Alamat : %s \n",alamat); } 3. getchar Jika ingin memasukkan sebuah nilai karakter ke variabel yang bertipe karakter maka kita dapat menggunakan perintah getchar. Perhatikan contoh program berikut ini : #include int main(){ char karakter; printf (" masukan Kata Karakter Anda : ") ; karakter=getchar(); printf("Karakter yang di Masukan : %c\n",karakter); }