Pernyataan (Statement) dan Input/Output
Pendahuluan Pemahaman Bahasa Pemrograman C akan lebih mudah melalui contoh-contoh. Dengan memperhatikan dan memahami contoh-contoh program, mahasiswa diharapkan dapat memahami konsep bahasa pemrograman yang dipelajari secara lebih mudah dan cepat. Pada pertemuan ini, pemahaman terhadap konsep dasar pemrograman C dilakukan dengan membahas dan memahami beberapa contoh program.
Objektif Memperkenalkan fungsi input dan output Pernyataan (statement)
Bahan Bacaan Buku pegangan atau bahan-bahan yang menjelaskan tentang topik ini. Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
1
Program Pertama Membuat program yang dapat mencetak tulisan “hello, world” pada layar monitor #include <stdio.h> int main(void) { printf("hello, world\n"); return 0; } Simpan kode program tersebut dengan nama misalnya: hello.c Compile dengan sintaks: gcc -Wall -o hello hello.c
Pada contoh di atas, program hello.c hanya memiliki sebuah fungsi utama main(). Tanda { } menyatakan awal dan akhir dari blok fungsi main tersebut. Fungsi main() hanya memiliki satu buah pernyataan yaitu: printf("hello, world\n");
Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
2
Fungsi printf hanya memiliki sebuah argumen (parameter) yaitu: "hello, world\n" Fungsi printf adalah sebuah fungsi yang telah dibuat dan prototipenya didefinisikan dalam file stdio.h. Oleh karena itu, pada bagian atas program tersebut library stdio.h harus disertakan terlebih dahulu menggunakan kata kunci include.
Karakter \n (newline character), digunakan untuk membuat baris baru setelah pernyataan sebelumnya dicetak di layar. Coba ubah program tersebut tanpa menggunakan \n, apa yang tercetak di layar? #include <stdio.h> int main(void) { printf("hello, world"); return 0; } #include <stdio.h> int main(void) { printf("hello"); printf("world"); return 0; }
Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
3
Input Output Penggunaan printf() dan scanf() Fungsi (function) printf() digunakan untuk menampilkan output, sedangkan fungsi scanf() digunakan untuk menerima input. Huruf "f" dalam printf dan scanf merupakan kependekan dari kata "formatted". Kedua prototipe fungsi tersebut dideklarasi dalam header file stdio.h. Header file ini harus disertakan (include) apabila fungsi tersebut digunakan dalam program. #include <stdlib.h> #include <stdio.h>
/* standard library dimana EXIT_SUCCESS, EXIT_FAILURE, dll didefinisikan */ /* standard I/O dimana printf dan scanf didefinisikan */
printf dan scanf secara garis besar menerima dua argumen yaitu: control_string
dan other_arguments
control_string digunakan untuk menentukan format dari argumen.
Contoh: printf("Suhu %d derajat celsius sama dengan %f derajat fahrenheit", celcius, fahrenheit); control_string
Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
4
Input Output: Continue Karakter konversi c d u e f s ld lf o, x
Format argument Character Decimal integer Unsigned decimal integer Floating point dalam notasi scientific Floating point (pecahan) String Long integer Double Octaldecimal dan hexadecimal
Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
5
Input Output: Continue Contoh Program 1 #include < stdio.h> int main(void) { printf("\nHello Students…."); printf("\n"); return 0; }
Contoh Program 2 #include <stdio.h> int main(void) { int i,j,k; i = 4; j = 5; k = i + j; printf("Sum of two numbers = %d \n",k); return 0; } Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
6
Input Output: Continue Contoh Program 3 #include <stdio.h>
64
int main(void) { int i = 100; printf(" %x\n",i); return 0; }
Contoh Program 4 #include <stdio.h>
112
int main(void) { int i = 74; printf(" %o\n",i); return 0; }
Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
7
Input Output: Continue Contoh Program 5 #include <stdio.h> #include <stdlib.h> int main(void){ char characterOne, characterTwo; int iNumber; float fNumber; double dNumber; printf("\n%s\n%s\n", "Menggunakan function scanf untuk beberapa tipe konversi", "Input 2 karakter (space sebagai pemisah), integer, float dan double"); scanf("%c,%c,%d,%f,%lf", &characterOne, &characterTwo, &iNumber, &fNumber, &dNumber); printf("\nOutput:\n"); printf("%4c %4c %5d %12.3f %15e\n\n",characterOne, characterTwo, iNumber, fNumber, dNumber); exit(EXIT_SUCCESS); }
Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
8
Pernyataan (Statement) Contoh Program 6 /* Perbandingan menggunakan 1 baris statement dengan lebih dari satu baris statement */ #include <stdio.h> #include <stdlib.h> #define MAXLOOP
10
int main(void) { int counter = 1, total = 0; while(counter <= MAXLOOP) { total += counter; counter++; } printf("Total = %d\n ", total); exit(EXIT_SUCCESS); }
Dalam assembly hanya membutuhkan satu baris statement yaitu: inc total, counter
while(counter <= MAXLOOP) { total = total + counter; counter = counter + 1; }
Dalam assembly membutuhkan lebih dari satu statement: load counter add total store total
Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
9
Character Input / Output Librari standar menyediakan beberapa fungsi untuk membaca dan memberi output untuk tipe data karakter. Fungsi tersebut adalah getchar() and putchar().
Contoh Program 7 #include <stdio.h> #include <stdlib.h> int main(void) { int c; c = getchar(); while (c != EOF) { putchar(c); c = getchar(); } return EXIT_SUCCESS; }
Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
10
Contoh Program 8 #include <stdio.h> #include <stdlib.h> int main(void){ int c; while ((c = getchar()) != EOF) putchar(c); return EXIT_SUCCESS; }
Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala – http://www.informatika.unsyiah.ac.id
11