MENAMPILKAN HASIL Operasi Keluaran (Output)
4.1 FUNGSI-FUNGSI YANG DIGUNAKAN Keunikan bahasa C untuk menampilkan hasil adalah semua prosesnya dilakukan oleh fungsi-fungsi. Fungsi-fungsi ini prototypenya berada di file judul (header file) stdio.h. dan conio.h. Fungsi-fungsi pustaka yang umum digunakan untuk menampilkan hasil yang prototipenya berada di file judul stdio.h adalah putchar( ), puts( ), printf( ) dan fprintf( ). Fungsi-fungsi pustaka ini sifatnya adalah standar, yaitu hampir semua kompiler C menyediakan fungsi-fungsi ini. Sedangkan fungsi-fungsi pustaka untuk menampilkan hasil yang prototipenya berada di file judul conio.h sifatnya adalah tidak standar, artinya tidak semua kompiler C menyediakan fungsi-fungsi pustaka ini.
4.2 ALAT-ALAT OUTPUT Suatu hasil (output) dapat ditampilkan di alat-alat output seperti misalnya layar monitor, printer dan file di disk. Alat output standar default bahasa C adalah layar monitor (stdout) dan printer (stdprn). Pada materi ini yang akan dibahas cara bagaimana menampilkan hasil ke layar monitor dan printer.
4.3 MENAMPILKAN HASIL TIDAK TERFORMAT Dua buah fungsi pustaka yang digunakan untuk menampilkan hasil tidak terformat, adalah fungsi standar : • Putchar Digunakan untuk menampilkan nilai karakter tidak terformat • puts Digunakan untuk menampilkan nilai string tidak terformat Tidak terformat maksudnya adalah lebar dan bentuk dari tampilannya tidak dapat diatur. Contoh 4.1: #include <stdio.h> main( ) { char C, S[11] = “Ini String”; C = ‘A’; putchar(C); putchar(7); puts(S); }
1
Kebaikan penggunaan fungsi ini adalah bentuknya sederhana dan tidak rumit, sedangkan kelemahan fungsi ini tidak dapat digunakan untuk menampilkan bentuk yang rumit. Fungsi ini hanya dapat menggunakan sebuah argumen saja.
4.4 MENAMPILKAN HASIL TERFORMAT Fungsi printf( ) dapat digunakan untuk memformat bentuk tampilan. Hasilnya dapat diatur formatnya, karena fungsi ini dapat menggunakan kode-kode format (karakter-karakter konversi). Dibawah ini menunjukkan kode-kode format yang umum digunakan untuk fungsi printf( ). Kode Format %c %s %d %i %u %x %o %f %e %g %p
Kegunaan Menampilkan sebuah karakter Menampilkan nilai string Menampilkan nilai desimal integer Menampilkan nilai desimal integer Menampilkan nilai desimal integer tak bertanda Menampilkan nilai hexadesimal integer Menampilkan nilai oktal integer Menampilkan nilai pecahan Menampilkan nilai pecahan dalam notasi saintifik Sebagai pengganti %f atay %e tergantung yang terpendek Menampilkan suatu alamat memori untuk pointer
Catatan : kode-kode format ini seluruhnya ditulis dengan huruf kecil.
4.4.1
Menampilkan Nilai Karakter Kode format “%c” digunakan untuk menampilkan nilai sebuah karakter terformat. Terformat berarti bahwa tampilannya dapat diatur lebar dan bentuknya. Contoh 4.2: Menampilkan sebuah karakter dengan lebar 3 posisi ( dua posisi di muka adalah karakter blank). Maka angka 3 dapat dituliskan diantara tanda “%” dan “c” sehingga kode format menjadi “%3c”. Untuk membuat tampilan rata kiri (blank berada disebelah kanan karakternya), maka dapat digunakan simbol (flag) minus, kode formatnya menjadi “%-3c”. #include <stdio.h> main( ) { char C = ‘B’; printf(“%c\n”,C); printf(“%3c\n”,C); printf(“%-3c\n”,C); }
/* lebarnya 1 karakter */ /* lebarnya 3 karakter rata kanan*/ /* lebarnya 3 karakter rata kiri*/
2
4.4.2
Menampilkan Nilai String Nilai string dapat ditampilkan dengan fungsi printf( ) menggunakan kode format “%s”. Berikut ini adalah kemungkinan-kemungkinan penampilan nilai string dengan kode format “%s”. “%s” “%Ns” “%-Ns” “%N.Ms”
“%-N.Ms”
Menampilkan semua karakter di nilai string Menampilkan semua karakter rata kanan dengan lebar N posisi; N adalah konstanta numerik bulat. Menampilkan semua karakter rata kiri dengan lebar N posisi Menampilkan rata kanan hanya M buah karakter pertama saja dengan lebar karakter N posisi; M dan N adalah konstanta numerik Menampilkan rata kiri hanya M buah karakter pertama dengan lebar N posisi.
Contoh.4.3 : #include <stdio.h> main( ) { char K[9] = ‘Bahasa C’; printf(“%s\n”,K); /* semua karakter, rata kiri */ printf(“%15s\n”,K); /* 15 tempat lebar, rata kanan */ printf(“%-15s\n”,K); /* 15 tempat lebar, rata kiri */ printf(“%15.5s\n”,K); /* 5 karakter di 15 tempat lebar, rata kanan */ printf(“%-15.5s\n”,K); /* 5 karakter di 15 tempat lebar, rata kiri */ }
4.4.3
Menampilkan Nilai Desimal Integer Nilai Desimal integer dapat ditampilkan dengan fungsi printf( ) menggunakan tiga buah kode format, yaitu “%d”, “%i” dan “%u”. Contoh 4.4: #include <stdio.h> main( ) { int L = 1234; printf(“%i\n”,L); printf(“%7d\n”,L); printf(“%07d\n”,L); }
/* selebar digit yang ada */ /* minimum selebar 7 digit rata kanan*/ /* minimum selebar 7 digit , blank diisi dengan 0 */
3
4.4.4
Menampilkan Nilai Desimal Pecahan Nilai desimal pecahan dapat ditampilkan dengan fungsi printf( ) menggunakan tiga buah kode format, yaitu “%f”, “%e” dan “%g”. Contoh 4.5: #include <stdio.h> main( ) { float F = 12345.6789; printf(“%15f\n”,F); /* selebar 15 digit */ printf(“%15.2f\n”,F); /* 15 digit dengan 2 digit di belakang koma, rata kanan */ printf(“%015.2f\n”,F); /* 15 digit dengan 2 digit dibelakang koma, blank diganti 0 */ }
4.4.5
Menampilkan Nilai Heksadesimal Nilai heksadesimal dapat ditampilkan dengan fungsi printf( ) menggunakan kode format “%x”. Contoh. 4.6: #include <stdio.h> main( ) { int H; printf(“Masukkan nilai desimal? : “); scanf(“%d”,&H); printf(“Nilai heksadesimalnya = %x\n”,H); }
4.4.6
Menampilkan Nilai Oktal Nilai oktal dapat ditampilkan dengan fungsi printf( ) menggunakan kode format “%o”. Contoh. 4.7: #include <stdio.h> main( ) { int O; printf(“Masukkan nilai desimal? : “); scanf(“%d”,&O); printf(“Nilai oktalnya = %o\n”,O); }
4
4.4.7
Menampilkan Nilai Pointer Pointer adalah variabel yang menyimpan alamat suatu letak data di memori. Pointer menunjukkan alamat memori letak dari variabelnya. Operator ‘&’ menunjukkan alamat nilainya dimemori. Nilai pointer dapat ditampilkan dengan fungsi printf( ) menggunakan kode format “%x”. Contoh. 4.8 #include <stdio.h> main( ) { int I; I = 123; printf(“Nilai %d ada di alamat memori %p\n”, I, &I); }
4.5 MENAMPILKAN HASIL KE PRINTER Bahasa C standar tidak menyediakan fungsi untuk menampilkan hasil di printer. Demikian juga Turbo C sebelum versi 1.5. Namun mulai dari versi ini suatu konstanta yang bernama stdprn telah disediakan untuk digunakan menampilkan hasil di printer. Fungsi yang digunakan untuk menampilkan hasil di printer adalah menggunakan konstanta stdprn adalah fungsi fprintf( ). Contoh 4.9 : #include <stdio.h> main( ) { fprintf(stdprn,”Halo Saya dicetak di Printer \n”); }
4.6 MEMBERSIHKAN LAYAR Turbo C versi 1.5 ke atas menyediakan fungsi clrscr( ) untuk membersihkan layar adalah fungsi, Prototipe dari fungsi ini terdapat di file judul conio.h. Contoh 4.10 : #include <stdio.h> #include
main( ) { clrscr( ); printf(”Layar ini sudah dibersihkan”); }
5
4.7 MELETAKKAN KURSOR DI POSISI LAYAR TERTENTU Turbo C versi 1.5 ke atas menyediakan fungsi gotoxy( ) untuk meletakkan kursor di koordinat layar tertentu. Prototipe fungsi ini terdapat di file judul conio.h. • Bentuk umum : gotoxy(kolom,baris); Contoh 4.11 #include <stdio.h> #include main( ) { clrscr(); gotoxy(20,5);printf(”MENU PILIHAN”); }
6