Make your own free website on Tripod.com

KONSEP DASAR BAHASA C

Perkembangan bahasa pemrograman C erat kaitannya dengan perkembangan sistem operasi UNIX, dimana keduanya dikembangkan di AT&T Bell Lab (USA).

Akar dari bahasa C adalah dari bahasa BCPL yang dikembangkan oleh Martin Richards pada tahun 1967.Bahasa ini memberikan ide pada Ken Thompson yang kemudian mengembangkannya menjadi bahasa B pada tahun 1970.Selanjutnya dikembangkan menjadi bahasa C oleh Dennis Ritchie pada tahun 1972 di Bell Laboratories.Pertama kali bahasa C diimplementasikan pada komputer DEC PDP-11 yang menggunakan sistem operasi UNIX. BCPL dan B tidak memiliki data type sedang C memiliki beragam data type.

Pada tahun 1978 Dennis Ritchie dan Brian W Kernighan mengeluarkan buku THE C PROGRAMMING LANGUAGE, buku inilah yang dijadikan acuan dari pembuatan berbagai versi bahasa C yang ada.

Pada tahun 1983 ANSI (American Nasional Standart Institute) membuat standarisasi bahasa C yang kemudian dijadikan sebagai referensi dari berbagai bahasa C yang beredar saat ini. C yang dihasilkan disebut C standard ANSI atau ANSI C. Tahun 1987 Borland menciptakan sebuah compiler C yang dikenal dengan nama TURBO C.

Dalam beberapa literatur bahasa C digolongkan sebagai bahasa tingkat menengah (Medium Level Language). Penggolongan ini tidak berarti bahwa bahasa C lebih sulit dibandingkan dengan bahasa pemrogramman tingkat tinggi seperti : PASCAL, BASIC. Ini merupakan suatu penegasan bahwa bahasa C bukan berorientasi pada mesin seperti pada bahasa tingkat rendah (Low Level Language). Dan pada kenyataannya bahasa C mengkombinasikan elemen dalam bahasa tingkat tinggi dan bahasa tingkat rendah. Hampir semua operasi yang dapat dilakukan oleh bahasa mesin dapat dilakukan oleh C dengan penyusunan program yang lebih sederhana dan mudah.

Pertama kali program ditulis dengan menggunakan editor dan disimpan didalam file program sumber ( dengan ekstension .c). Kemudian kode file program sumber dikompilasi oleh compiler menjadi object code dan disimpan pada sebuah file object (dengan ekstension .obj). Object code sudah berbentuk kode mesin, tapi kode ini belum bisa dimengerti oleh komputer. Agar dapat dimengerti oleh komputer maka object code bersama dengan object code yang lain serta file library (file yang berisi rutin untuk tugas tertentu) perlu dikaitkan (linking) dengan menggunakan linker. Sehingga terbentuk suatu file yang executable (program yang dapat dijalankan secara langsung dalam lingkungan sistem operasi). Program hasil linker ini disimpan dalam sebuah file executable dengan ciri mempunyai ekstension .EXE

MENGAPA C ?!

 Banyak program dan software yang ditulis dalam C

 C adalah bahasa yang portable,efisien,modern,friendly, powerfull, fleksibel

menghasilkan program yang kompak dan cepat

C adalah bahasa yang portable: program yang ditulis pada satu sistem atau aplikasi dapat dijalankan pada sistem  atau aplikasi lain tanpa atau dengan sedikit perubahan

C adalah bahasa yang efisien : menghasilkan program yang kompak/ringkas dan cepat

C adalah bahasa modern : mempunyai fasilitas - fasilitas kontrol yang diperlukan oleh teori - teori komputer science maupun aplikasi

C adalah bahasa yang friendly : keterikatannya/ restriksinya tidak ketat

C adalah bahasa yang powerfull dan fleksibel

 UNIX sebagian besar ditulis dalam C

 C compiler ditulis dalam C

 Interpreter lain (FORTRAN,APL,Pascal,LISP,BASIC) bisa ditulis dlm C

 Digunakan dlm memecahkan masalah fisik maupun engineering

 Digunakan untuk animasi

 Mempunyai kontrol yang biasanya hanya dimiliki oleh bahasa assembly.

 

STRUKTUR PEMROGRAMAN C

    Untuk dapat memahami bagaimana suatu program ditulis maka struktur dari suatu program harus dimengerti terlebih dahulu.Jika struktur program tidak diketahui maka akan sulit bagi pemula untuk memulai menulis program.Tiap bahasa pemrograman memiliki struktur program yang berbeda.

    Program dapat dilihat sebagai koleksi satu atau lebih fungsi. Fungsi yang harus ada pada C sudah ditentukan yaitu main(). Fungsi terdiri dari sebuah header dan sebuah badan. Header berisi preprocessor statement seperti #include dan nama fungs.i Badan diawali dengan kurung kurawal buka ({) dan diakhri oleh kurung kurawal tutup (}), diantara kurung kurawal tersebut  berisi seri dari  1 statemen atau lebih statemen,masing-masing statemen  diakhiri tanda titik koma (;).

Adapun bentuk umum dari stuktur program bahasa C  adalah:

# include file

# define var konstan

deklarasi/prototype fungsi

deklarasi variabel global

main()

{

deklarasi variabel lokal

:

<pernyataan - pernyataan>

:

}

nama fungsi (arg1, arg2,...)

{

deklarasi variabel lokal

:

< pernyataan - pernyataan>

:

}

CONTOH :

1. #include <stdio.h> berisi informasi tentang standar library

    main() mendefinisikan fungsi main.

    fungsi main tidak ada argumen

    { awal dari badan fungsi

    printf("hello\n"); fungsi main memanggil library function

    printf yang mencetak sejumlah karakter

    dalam tanda "..."

    } akhir dari badan fungsi

    OUTPUT :

    hello

2. #include <stdio.h>

main() /* program sederhana*/

{

int num;

num = 2;

printf ("I am a student");

printf ("in STMIK DARMAJAYA \n");

printf ("I am in the %d nd year.\n",num);

}

OUTPUT :   I am a student in STMIK DARMAJAYA

                    I am in the 2 nd year.

PENJELASAN SINGKAT PROGRAM

#include <stdio.h>

- Menyertakan sebuah file lain yaitu file stdio.h

- Berisi informasi tentang Input & Output , bagian dari paket C Compiler

- # merupakan instruksi PREPROCESSOR, diproses oleh C-PREPROCESSOR.

 

main()

sebuah nama fungsi , tanda kurung mencakup informasi yang merupakan argumen.

Harus ada dalam program , karena dari fungsi ini program akan mulai dieksekusi, tanpa fungsi ini program tidak akan dapat dilaksanakan

/* program sederhana*/

Sebuah komentar untuk memudahkan orang lain dalam mengerti program kita

Simbol /* dan */ dipakai untuk menandai komentar segala sesuatu di dalam tanda /* dan */ diabaikan oleh C compiler

{ Menandai awal dari badan fungsi

} Mengakhiri definisi fungsi

; (titik koma)

- Untuk mengakhiri stiap pernyataan/perintah

- Antara pernyataan/perintah yang satu dengan yang lain hanya dapat dipisahkan dengan tanda titik koma (;) bukan dengan baris yang berbeda atau spasi atau karakter yang lain

int num;

sebuah deklarasi statement yaitu mendefinisikan variabel bernama num sebagai tipe integer.

deklarasi statement sangat penting, karena mendeklarasikan 2 hal :

1. dalam fungsi tersebut akan ada variabel yang bernama num

2. variabel num mempunyai tipe integer.

dalam C, semua variabel harus dideklarasikan

num = 2;

- sebuah assignment statement yi pemberian harga 2 pd variabel num

- assignment statement adalah operasi paling dasar .

printf ("I am a student");

- sebuah print statement yaitu mencetak kalimat dalam tanda petik

printf ("in STMIK DARMAJAYA.\n");

- \n merepresentasikan 1 karakter tunggal yang adalah menginstruksikan komputer untuk mengawali baris baru.

-  \n adalah salah satu dari escape sequence.

printf (" I am in the %d nd year.\n",num);

- Mencetak kalimat dalam tanda petik dengan meletakkan harga variabel num (yaitu 4) diposisi %d.

- Harga dari num mensubstitusi simbol %d yaitu

1. menempatkannya pada posisi %d.

2. menampilkannya sebagai digit.

Kalimat dalam tanda kurung adalah informasi yang diteruskan oleh fungsi main(),ke fungsi printf(); informasi tersebut disebut Argumen.Jadi pada baris pertama "I am a student" adalah argumen.

Fungsi printf() mengambil isi dari tanda petik dan menampilkannya di layar.

#include <stdio.h>

/*mencetak konversi 200 C ke dalam Fahrenheit */

main()

{

int fahr,celcius;

celcius = 20;

fahr = (9*celcius/5)+32;

printf ("%d derajat Celcius = %d derajat Fahrenheit.\n",

Celcius,fahr);

}

OUTPUT :

20 derajat Celcius = 68 derajat Fahrenheit

Catatan : deklarasi 2 variabel

kalkulasi

2 substitusi pada fungsi printf()