Bahasa C dikembangkan oleh Denis M Ritchie dan Brian W.
Kernighan pada awal
tahun 1970. Bahasa C adalah salah satu bahasa pemrograman tingkat tinggi yang berarti merupakan salah satu bahasa komputer dapat dipahami dengan mudah oleh manusia. Bahasa C banyak digunakan sebagai saran pengembangan perangkat keras, sistem perangkat lunak, permainan, dan juga aplikasi. Bahasa C sangat cocok untuk digunakan sebagai sarana pengembangan berbagai jenis perangkat lunak, karena memiliki sintaksis yang sederhana namun sangat kuat di sisi lain. Bahasa C juga digunakan sebagai dasar pemrograman bahasa lain seperti C++, C#, dan bahasa pemrograman lainnya. Pemrograman Bahasa C memiliki beberapa struktur penting yang harus ada untuk membuat suatu program dapat berjalan sesuai dengan yang diharapkan. Struktur umum bahasa C terdiri dari Preprocessor directive, Deklarasi global, Fungsi utama, kode program utama, dan return value. Preprocessor directive adalah sebuah perintah yang digunakan untuk memulai pemrograman dalam bahasa C sekaligus membuat dan mengkompilasi file perantara dengan program utama, perintah ini biasanya dimulai dengan karakter “#”(hash). Perintah ini berfungsi untuk mengimpor file header, mendefinisikan konstanta, atau mengaktifkan atau menonaktifkan fitur-fitur tertentu dalam program. Contoh umumnnya adalah seperti ‘#include’ untuk mengimpor file header seperti ‘#include <stdio .h>’. Deklarasi Global merupakan bagian program c tempat pendeklarasian konstanta, variable, fungsi, atau header fungsi, tipe data baru, atau struktur data yang memiliki sifat global. Komponen yang dimasukan tentunya juga harus memiliki tipe data yang sesuai, sebagai contoh ‘int’, ‘float’, ‘char’, dan lain-lain. Fungsi utama (‘main()’) adalah titik awal dari eksekusi program dan merupakan komponen yang akan dieksekusi oleh kompiler. Kompiler hanya akan mengeksekusi fungsi-fungsi lain yang dipanggil pada fungsi utama atau yang memiliki hubungan dengan fungsi utama secara tidak langsung. Kode program utama adalah kode yang dituliskan dalam fungsi ‘main()’, kode program inilah nantinya yang akan dieksekusi. Kode program ini juga merupakan bagian utana dalam pemrograman C untuk membuat program-program yang diinginkan. Return value termasuk dalam fungsi ‘main()’ yang dapat mengembalikan nilai umunya menjadi 0 ke sistem operasi untuk menunjukan status keluaran program pada sistem. Return value merupakan struktur yang harus ditulis jika berpatokan pada struktur bahasa C yang ideal. namun secraa umum digunakan untuk menunjukan apakah program berjalan dengan sukses atau mengalami masalah. Selain beberapa struktur diatas juga ada struktur tambahan yang opsional dapat ditambahkan sesuai dengan kebutuhan pemrograman. Beberapa struktur nnya adalah seperti Comments, yang digunakan untuk memberikan penjelasan tambahan tentang kode program. Struktur comments ini tidak memiliki efek apapun pada hasil eksekusi program, namun akan sangat berguna untuk dokumentasi dan pemahaman kode. Comments dalam bahasa C dimulai degan ‘/*’ dan diakhiri dengan ‘*/’ untuk komentar blok atau menggunakan ‘//’ untuk komentar satu baris. Pada bahasa C terdapat beberapa tipe data untuk merepresentasikan data yang berupa bilangan bulat, bilangan real, karakter, string, dan lain-lain. Beberapa contoh tipe data adalah sebagai berikut, unsigned char ukuran 1 byte rentang nilai 0 to 255, Int (or signed int) ukuran 2 bytes rentang nilai -32,768 to 32,767, char (or signed char) ukuran 1 byte rentang nilai -128 to 127, dan masih banyak lagi. Setiap tipe data memiliki format specifier yang dapat digunakan pada formatted string , agar data dapat ditampilkan pada layer. Beberapa contoh format specifier untuk beberapa tipe data seperti, %d or %i untuk tipe data int, %f untuk tipe data float, %If untuk tipe data double, dan masih banyak lagi. Tipe-tipe data ini dan spesifikasinya bisa ditemukam dengan mudah di internet. Bahasa C juga memiliki variabel yang berfungsi sebagai tenpat menyimpan atau mendeklarasikan sebuah nilai data. Output dan input dalam bahasa C sangat lah penting untuk menunjukan keberhasilan dari suatu program yang dijalankan. Dalam bahasa C perintah untuk menampilkan output pada umumnya menggunakan perintah “printf”. Perintah ini nantinya akan menampilkan data yang diinginkan pada layar. Input bahasa C umumnya menggunakan perintah “scanf”, perintah ini berguna agar pengguna dapat memasukan nilai yang diinginkan.