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 int main(void) { printf("hello, world\n"); 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? int main(void) { printf("hello, world"); int main(void) { printf("hello"); printf("world"); 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> /* 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 Format argument konversi c Character d Decimal integer u Unsigned decimal integer e Floating point dalam notasi scientific f Floating point (pecahan) s String ld Long integer lf Double o, x 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"); Contoh Program 2 int main(void) { int i,j,k; i = 4; j = 5; k = i + j; printf("sum of two numbers = %d \n",k); Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala http://www.informatika.unsyiah.ac.id 6
Input Output: Continue Contoh Program 3 int main(void) { int i = 100; printf(" %x\n",i); 64 Contoh Program 4 int main(void) { int i = 74; printf(" %o\n",i); 112 Taufik Fuadi Abidin - Irvanizam, Jurusan Informatika, FMIPA Universitas Syiah Kuala http://www.informatika.unsyiah.ac.id 7
Input Output: Continue Contoh Program 5 #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 <stdlib.h> #define MAXLOOP 10 int main(void) { int counter = 1, total = 0; while(counter <= MAXLOOP) while(counter <= MAXLOOP) { { total += counter; total = total + counter; counter++; counter = counter + 1; printf("total = %d\n ", total); exit(exit_success); Dalam assembly hanya membutuhkan satu baris statement yaitu: inc total, counter 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 <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 <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