ii
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa.
Dengan limpahan karunia-Nya penulis dapat menyelesaikan penyusunan
makalah ini dengan judul Dasar-Dasar Pemegroraman.
i
DAFTAR ISI
Halaman
KATA PENGANTAR i
DAFTAR ISI ii
BAB 1 PENDAHULUAN 1
1.1 Latar Belakang 1
1.2 Rumusan Masalah 1
1.3 Tujuan 1
BAB 2 PENGENALAN BAHASA C 3
2.1 Pengenalan Bahasa C 3
2.1.1 Pengertian Bahasa C 3
2.1.2 Sejarah Bahasa C 3
2.1.3 Perkembangan Bahasa C 5
2.2 Struktur Bahasa C 6
2.2.1 Header 6
2.2.2 Fungsi Utama (Main) 6
2.3 Variabel Dalam Bahasa C 9
2.4 Kelebihan Dan Kekurangan Bahasa C 9
2.4.1 Kelebihan Bahasa C 9
2.4.2 Kekurangan Bahasa C 10
BAB 3 OPERATOR DAN TIPE DATA 11
3.1 Pengertian Operator Dalam Pemrograman 11
3.2 Macam-Macam Operator 11
3.2.1 Operator Aritmatika 11
3.2.2 Operator Increment Dan Decrement 12
3.2.3 Operator Perbandingan/Relasional 12
3.2.4 Operator Logika/Bolean 13
3.3 Tipe Data Dalam Pemrograman 14
BAB 4 PERCABANGAN 17
4.1 Pengertian Percabangan 17
4.2 Bentuk Percabangan 17
4.2.1 If Statement 17
4.2.2 If Else 18
ii
4.2.3 If-Else If 19
4.2.4 Nested If 21
4.2.5 Switch Case 22
BAB 5 LOOPING/PERULANGAN 24
5.1 Pengertian Looping 24
5.2 Jenis Jenis Looping 25
5.2.1 Looping For 25
5.2.2 While 26
5.2.3 Do While 27
BAB 6 FUNCTION 29
6.1 Pengenalan Function 29
6.1.1 Pengertian Function 29
6.1.2 Tujuan Function 30
6.2 Jenis-Jenis Dan Contoh Function 30
6.2.1 Jenis-Jenis Function 30
6.2.2 Contoh Function 31
BAB 7 ARRAY 34
7.1 Pengertian Array 34
7.2 Penggunaan Array 34
7.3 Bentuk-Bentuk Array 35
7.3.1 Array Satu Dimensi 35
7.3.2 Array Dua Dimensi 36
7.4 Kelebihan Dan Kekurangan Array 37
7.4.1 Kelebihan Array 37
7.4.2 Kekurangan Array : 37
BAB 8 PENUTUP 38
8.1 Kesimpulan 38
8.2 Kritik dan Saran 38
DAFTAR PUSTAKA 40
iii
iv
BAB 1
PENDAHULUAN
1.3 Tujuan
1
Tujuan dibuatnya makalah ini adalah membuat ringkasan tentang
materi-materi yangtelah didapat dalam mengikuti praktikum di lab
pemograman selama delapan kali pertemuan beserta dengan kesimpulan
nya. Tujuan pembuatan makalah ini juga sebagai
tugas akhir semester untuk lab dasar-dasar pemrograman sekaligus sebagai
syarat untuk mengikuti ujian.
2
3
BAB 2
PENGENALAN BAHASA C
4
Language". Buku ini diterbitkan olehPrentice 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 kenaldengan
sebutan K&R C (K=Kerninghan | R=Ritchie).Seiring pesatnya perkembangan
bahasa C, maka banyak vendor dan softwaredeveloper mengembangkan
bahasa C menurut versi mereka masing-masing. hal ini telahmemicu ANSI
(American National Standards Institute) pada tahun 1983 untuk membentuk
komite teknis yang di sebut X3J11 untuk bekerja pada standard bahasa
Cyang bertujuan untuk membuat definisi standar bahasa C yang lebih
modern dankomprehensif, dengan memperbaiki syntax dan grammar bahasa
C. Pada akhir 1989komite telah menyetujui standard ANSI untuk bahasa C
yang kemudian terkenal dengansebutan ANSI C.Bahasa C termasuk high-
level programming language. Pada kenyataannya bahasa C adalah salah satu
bahasa yang paling populer untuk keperluan.
5
bahasa C kita bisa menulis dan mengembangkan berbagai jenis program
mulai dari operating system, word processor, graphic processor,ataupun
compiler untuk satu bahasa pemrograman yang lain.Keuntungan ketiga
adalah reuse : bahasa pemrograman yang dapat di gunakan beberapa kali
dalam program atau aplikasi lain. Di karenakan banyak bahasa-bahasayang
lain dibuat dengan menggunakan bahasa C, maka bahasa C cocok untuk di
jadikan bahasa pemula untuk belajar programming. Seperti halnya bahasa
PERL yang sangat popular di kalangan World Wide Web (WWW) juga banyak
mengambil fitur dari bahasa C. contoh lain adalah C++ yang di perluasan dari
bahasa C. Belajar JAVA punakan sangat mudah jika anda mengetahui
bahasa C.
6
level programming language). Arti tingkat (level) disini adalah kemampuan
mengakses fungsi-fungsi dan perintah-perintah dasar bahasa
mesin/hardware (machine basic instruction set). Semakin tinggi tingkat
bahasa pemrograman (misalnya: java), semakin mudahlah bahasa
pemrograman dipahami manusia, namun membawa pengaruh semakin
berkurang kemampuan untuk mengakses langsung instruksi dasar bahasa
mesin. Demikian juga sebaliknya dengan bahasa pemrograman tingkat
rendah (misalnya: assembler), yang semakin sulit dipahami manusia dan
hanya berisi perintah untuk mengakses bahasa mesin. Dalam perspektif
mudahnya dipahami manusia, C bisa digolongkan dalam bahasa tingkat
tinggi, namun C juga menyediakan kemampuan yang ada pada bahasa
tingkat rendah, misalnya operasi bit, operasi byte, pengaksesan memori, dsb.
2.2.1 Header
Header bisa kita sebut inilah permulaan sebuah project. jadi sebelum
kitamenuliskan coding hal yang harus kita perhatikan terlebih dahulu ialah
bagian ini.karena jenis header ini mempengaruhi isi perintah yang bisa
dimuat dalam projectnantinya. Coba kita bayangkan kalau sebenarnya kita
telah susah payah coding namunternyata jenis header yang kita masukkan
dalam project tidak sesuai dengan programyang digunakan ( misalnya antara
c dan c ++ ) maka semuanya akan sia - sia sebelumkita membenahinya.
contohnya adalah #include <stdio.h> dan sebagainya. Setiap header diawali
dengan kata #include kemudian diikuti dengan <.......> ini berguna untuk
mengisi dengan library sesuai yang akan kita gunakan dan harus
sesuaidengan program yang sedang kita gunakan untuk coding saat itu.
7
tersebut dan dalam bahasa ini fungsi tersebut ialah fungsi main(). Pada saat
eksekusi fungsi inilah yang akandipanggil terlebih dahulu, karena selain
berada di awal fungsi ini juga merupakan kunciuntuk menjalankan program
saat setelah kita selesai coding.
yaitu fungsi yang akan kembali ke sistem awal operasinya. Kita dapat
menjalankanfungsi ini dengan cara menuliskan kata void sebelum main,
contohnya sebagai berikut :
#include <stdio.h>
void main(void)
dengan catatan void didalam kurung bisa kita tulis bisa tidak. karena yang
terpentingatau intinya itu berada pada main itu sendiri.
#include <stdio.h>
int main(void)
return 0;
8
juga dengan catatan void didalam kurung bisa kita tulis bisa tidak. karena
yangterpenting atau intinya itu berada pada main itu sendiri. jadi boleh - boleh
saja danwajar wajar saja jika kita menuliskan int main() atau void main() itu
sama saja. sama- sama dapat dibaca oleh program c.
3. Deklarasi Variabel
tipe_data_n nama_variabe_n){
Proses
return variabel_keluaran}
4. Fungsi
9
dengan int main(),dengan return value-nya 0. beberapa fungsi yang sering
digunakan sebagai berikut :
1.printf()
2.scanf()
3.gets()
4.getchar()
5.Tidak boleh menggunakan kata kunci pada bahasa C, contoh: if, int, void, dll.
10
2.4 Kelebihan Dan Kekurangan Bahasa C
11
BAB 3
12
3.2 Macam-Macam Operator
Macam macam Operator Dalam Pemrogaraman Terdiri Dari 4 Jenis yaitu
sebagai berikut :
13
Tabel 3.2.2 Operator Increment dan Decrement
Operator Contoh Penjelasan
Pre-increment ++a Tambah a sebanyak 1 angka, lalu tampilkan
hasilnya
Post- a++ Tampilkan nilai a, lalu tambah a sebanyak 1
increment angka
Pre-decrement --a Kurangi a sebanyak 1 angka, lalu tampilkan
hasilnya
Post- a-- Tampilkan nilai a, lalu kurangi a sebanyak 1 angka
decrement
14
pertama lebih besar dari kedua, maka jalankan perintah ini. Atau jika
string password = ‘qwerty’ maka berikan hak akses. Operator perbandingan
kadang disebut juga dengan operator relasional karena kita membandingkan
hubungan (relasi) sebuah nilai dengan nilai lainnya.
O p er a t or N am a P en j el a sa n C on t oh
op er an d 1
! N ot A k an m en g h asi l k an 1 j i k a op er an d 0 ! 0 , h asi l n y a: 1
15
3.3 Tipe Data Dalam Pemrograman
Tipe data dapat diartikan sebagai alat yang digunakan dalam
pemrograman untuk menentukan tipe nilai pada suatu objek dan operasi.
Secara khusus, tipe data merupakan format penyimpanan data yang dapat
berisi tipe atau rentang nilai tertentu. Saat program komputer menyimpan
data dalam variabel, setiap variabel harus diberi tipe data tertentu.
1. integer
Integer atau sering ditulis dengan (int.) merupakan tipe data berbentuk
bilangan bulat atau tipe data numerik yang umum digunakan untuk
menyimpan angka tanpa komponen pecahan dengan rentang angka -707, 0,
hingga 707. Tipe data integer ini mencakup semua bilangan bulat atau
bilangan yang tidak memiliki komponen pecahan.
2. Float
Jika tipe data berbentuk bilangan bulat masuk dalam kategori data
integer, maka untuk bilangan pecahan atau desimal masuk dalam tipe data
floating point. Tipe data ini merupakan tipe data yang mengacu pada
penggunaan dua kali lipat jumlah penyimpanan relatif dengan metode angka
dalam kode seperti pada kalkulator.Tipe data floating point atau real number
merupakan tipe data angka yang memiliki bagian decimal diakhir angka.
16
3. Double
4. Char (character)
Tipe data (char) merupakan tipe data yang digunakan untuk menyimpan
satu huruf, angka, tanda baca, simbol, atau spasi kosong. Umumnya, tipe
data ini dipakai dalam bahasa pemrograman di berbagai komputer modern
untuk menyimpan karakter alfabet dengan menampilkan masing-masing
karakter menggunakan kode numerik kecil. Jumlah karakter yang harus
disimpan dalam tipe data ini cukup banyak dan oleh karena itu penggunaan
bitnya juga harus mewakili setiap karakter secara unik.
5. String
Tipe data paling populer dan paling banyak digunakan adalah tipe data
string. Tipe data ini terdiri dari satu atau lebih karakter yang dapat mencakup
huruf, angka, dan jenis karakter lainnya seperti halnya teks biasa. Tipe data
ini bertindak untuk mewakili data bersifat alfanumerik (huruf dan angka).
Dengan begitu, tipe data string berisi banyak karakter berbeda, namun semua
karakter tersebut dianggap sebagai teks, meskipun karakter berupa angka.
Tipe data string juga dapat berisi spasi. Umumnya, sulit membedakan
penggunaan tipe data string dengan kode program yang biasa dipakai. Untuk
membedakan dan memberi tanda untuk awal dan akhir dari tipe data string
maka diberikan penambahan karakter khusus seperti tanda kutip.
6. Bolean
Tipe data Boolean atau (bool) merupakan tipe data yang mewakili nilai
benar dan salah dalam suatu data. Umumnya, dalam tipe data ini nilai salah
(false) dan benar (true) direpresentasikan dengan 0 (false) dan 1 (true). Tipe
17
data Boolean hanya dapat mewakili dua nilai dengan pertimbangan seperti
hubungan angka lebih kecil atau lebih besar.
BAB 4
PERCABANGAN
18
Namun karena komputer hanya tau dua hal saja, yaitu benar dan salah, 0 dan
1, ya dan tidak. Oleh karena itu dalam penentuan keputusan, komputer hanya
akan menguji apakah kondisi sekarang benar (1) atau salah (0). Bahkan jika
ada dua bilangan 5 dan 2, komputer tidak bisa memberitahu bahwa 5 lebih
besar daripada 2 atau 2 lebih kecil. Sehingga perlu suatu perintah untuk
komputer mengetahuinya.
4.2.1 If Statement
if (kondisi) {
Contoh Program if :
#include <stdio.h>
int main(){
int nilai;
scanf("%d", &nilai);
19
printf("Pertahankan!!\n");
4.2.2 If Else
if (kondisi) {
} else {
int main(){
int nilai;
scanf("%d", &nilai);
20
printf("Selamat, kamu lulus ujian\n");
printf("Pertahankan!!\n");
else{
4.2.3 If-Else If
Pada sintaks if-else if berikut kita dapat melihat bahwa terdapat lebih dari
satu kondisi di dalam rangkaian blok percabangan. Proses pengujian
kondisinya dimulai dari kondisi paling atas ke bawah.
if (kondisi1) {
} else if (kondisi2) {
21
} else {
#include <stdio.h>
int main(){
int nilai;
scanf("%d", &nilai);
printf("Pertahankan!!\n");
else{
4.2.4 Nested If
if juga (If Bersarang) . Secara umum struktur bentuk dari pernyataan nested if
if(kondisi 1){
22
if(kondisi 2){
if(kondisi n){
pernyataan ; }
else if ( ) {
pernyataan; }
else {
else{
pernyataan;
#include <stdio.h>
int main ()
int password,user_id;
scanf("%i", &user_id);
scanf("%i", &password);
if(user_id==240404);
if(password==6789)
else
23
printf("\nPassword anda salah, coba lagi");
}}
return 0;
switch(kondisi)
salah"); break;
#include<stdio.h>
int main(){
int a,b;
24
printf(“2. PERPUSTAKAAN\n”);
scanf(“%d”,&a);
switch(a)
break;
break;
default:
return 0;
BAB 5
LOOPING/PERULANGAN
25
dapat melakukannya dengan memori yang sedikit dan waktu yang singkat.
Dalam merancang perulangan, kita setidaknya harus mengetahui 3
komponen:
berhenti.
// kode program
// kode program
1.Start adalah untuk menyatakan keadaan awal dari variable control pada
perulangan.
dilakukan.
26
1. Counted Loop merupakan perulangan yang jelas dan sudah tentubanyak
kali perulangannya. Contohnya looping for
//kode statement
2. Jika test ekspresi false maka looping dihentikan, jika true maka akan terus
lanjut.
#include <stdio.h>
int main(){
printf("Sobat ambisius\n");
27
}
return 0;
PENJELASAN :
5.2.2 While
while (kondisi)
// kode program
// kode program
increment;
#include <stdio.h>
int main(){
int i = 10;
printf(" %d \n",i);
28
i--;
return 0;
PENJELASAN :
1. pada kode diatas variabel i = 10, lalu variabel i di loop 5 angka, sehingga
nanti akan menampilkan 5 angka
5.2.3 Do While
do{
// kode program
// kode program
increment;
} while (kondisi)
#include <stdio.h>
int main(){
int i = 1;
29
do {
i++;
return 0;
PENJELASAN :
BAB 6
FUNCTION
30
6.1 Pengenalan Function
6.1.1 Pengertian Function
struktur fungsi :
tipeDataKembalian namaFunction(parameter) {
Tipe data kembalian adalah tipe data dari data yang dihasilkan suatu
functionparameter adalah nilai yang dibutuhkan suatu function untuk
menjalankan kode bloknya (opsional).
31
dalam hal ini pengembangan bagian program lebih difokuskan pada sub-sub
yang memerlukan pengembangan saja. Tidak perlu mencari dalam seluruh
bagian program.
Pada umumnya fungsi tanpa nilai balik (return value) ini digunakan
untuk melakukan proses-proses yang tidak menghasilkan nilai, seperti
melakukan pengulangan, proses pengesetan nilai ataupun yang lainnya.
Dalam bahasa C, fungsisemacam ini tipe kembaliannya akan diisi dengan
nilai void .
Statemen_yang_akan_dieksekusi; ... }
32
Struktur nya yaitu :
Statemen_yang_akan_dieksekusi;
...
return nilai_balik;
#include <stdio.h>
void anjing();
void burung();
void ular();
int main(void)
anjing();
burung();
33
ular();
return 0;
void anjing() {
printf("Menggonggong \n");
void burung() {
printf("Berkicau\n");
void ular() {
printf("Berdesis \n");
#include <stdio.h>
int hitungLuasSegitiga();
int main(void)
judul_program();
hitungLuasSegitiga();
return 0;
int hitungLuasSegitiga() {
double alas = 5;
double tinggi = 7;
34
printf("Luas segitiga adalah: %.2f \n",luas);
#include<stdio.h>
int main()
int y, t=10;
y=luas_persegi(t);
, t, y);
return 0;
int luas_persegi(int x)
x = x*x;
return(x);
35
BAB 7
ARRAY
Didalam array terdapat Array Statis dan Dinamis, Array statis yaitu
array yang nilainya selalu tetap dan biasanya kita deklarasikan, sedangkan
Array Dinamis adalah suatu array yang nilainya dapat berubah-ubah yang
nantinya kita isikan nilainya melalui perulangan
36
Int Angka[5] >>> Array Dinamis
#include <stdio.h>
int main () {
int i,j;
37
printf("Elemen[%d] = %d\n", j, n[j] );
return 0;
#include <stdio.h>
int main() {
int i, j;
38
printf("\n"); // mencetak enter pada baris terakhir.
return 0;
2. Jika berada di suatu lokasi index sangatlah mudah untuk mencari ke index
yang sama
3. Jika index array adalah nilai - nilai tersendiri dan semuanya harus terjaga,
maka penggunaan penyimpanannya sangatlah tepat
3. jika array bertipe homogen , maka user tidak dapat mempunyai arry diman
satu index adalah karakter utamanya
39
BAB 8
PENUTUP
8.1 Kesimpulan
Kesimpulan dari analisis dan pembahasan laporan ini adalah kita
mempelajari dasar pemrograman bahasa C dan membuat program untuk
memecahkan masalah perhitungan dengan menggunakan aplikasi
Codeblocks. Dan dari analisis serta pembahasan diatas kita jadi mengetahui
perintah- perintah serta fungsi-fungsinya dalam membuat program coding.
Pada intinya bahasa pemrograman digunakan oleh programmer dalam
mengotak-atik sebuah computer ataupun sejenisnya. Di dalam struktur
bahasa pemrogaman terdapat beberapa bagian deklarasi dan beberapa
bagian dari statment.
Yang mana Kode bahasa C bersifat portable dan didukung dengan pustaka
yang banyak. Selain itu bahasa pemrograman C memilki karakteristik lain
seperti : hemat ekspresi, alur kontrol, menggunakan struktur data modern,
dan kayadengan operator. C bisa disebut bahasa pemrograman tingkat
menengah (middle level programming language). Namun dalam perspektif
mudahnya dipahami manusia, C bisadigolongkan dalam bahasa tingkat
tinggi, namun C juga menyediakan kemampuan yangada pada bahasa tingkat
rendah, misalnya operasi bit, operasi byte, pengaksesan memori,dan
sebagainya
40
1. Mudah dikembangkan di masa mendatang
5. Bahasa pemrograman yang baik haruslah dapat dipakai pada berbagai tipe.
41
DAFTAR PUSTAKA
https://www.academia.edu/45684754/Makalah_Dasar_Dasar_Pemrograman
https://omncitgilbim.wordpress.com/2019/06/17/makalah-dasar-dasar-
pemrograman/
https://fatimahleli.wordpress.com/2016/12/23/makalah-praktikum-dasar-
dasar-pemrograman/
https://g.co/kgs/19vTLe
http://muhamimron.blogspot.com/2016/03/perkembangan-bahasa-
pemrograman-c.html
https://www.kompas.com/skola/read/2021/08/02/185952369/jenis-jenis-
operator-aritmatika-dalam-bahasa-program?page=all
https://rpubs.com/shafirahalma/817020
https://cahinfor.com/percabangan-dalam-bahasa-c/
https://www.sobatambisius.com/2021/09/belajar-bahasa-c-5-
perulanganlooping.html
http://wismarini.staff.unisbank.ac.id/2013/07/15/tujuan-dan-keuntungan-
fungsi/
https://ocw.upj.ac.id/files/Handout-IFA105-MP5-Fungsi.pdf
https://www.mahirkoding.com/variabel-global-dan-variabel-lokal-dalam-
bahasa-c/
42
http://2114r0879-strukturdata-septialutfi.blogspot.com/2015/05/makalah-
tentang-
array.html
http://kelompok23ti2013.blogspot.com/2013/11/makalah-bahasa-
pemrograman.html
https://docplayer.info/30306908-Fungsi-dalam-bahasa-c.html
http://sayyidsani.blogspot.com/2012/12/makalah-dasar-dasar-
pemrograman.html
https://www.materipelajaran.web.id/2017/03/pengertian-array-serta-
contohnya-bahasa-c.html
43
44