Input/Output
Topik Stream Input Terformat output Terformat
Recall scanf() Contoh: scanf(“%d”, &x); printf() Contoh: printf(“Nilai x adalah %d\n”, x); #include <stdio.h>
Input/Output Program
Streams Input text atau output adalah suatu yang dihadapkan pada urutan karakter Stream melayani sebagai channel untuk menyampaikan karakter antara io dan program
Streams: Input -- Contoh 135 25.5 _ int item; float cost; scanf(“%d %f”, &item, &cost); 1 3 5 2 5 . 5 \n input buffer
Streams: Input -- Contoh (cont) 135 25.5 _ int item; float cost; scanf(“%d %f”, &item, &cost); 1 3 5 2 5 . 5 \n item cost
Streams: Input – Contoh (cont) int item; float cost; scanf(“%d %f”, &item, &cost); 135 25.5 _ 2 5 . \n item cost 135
Streams: Input – Contoh (cont) int item; float cost; scanf(“%d %f”, &item, &cost); 135 25.5 _ \n item cost 135 25.5
Streams: Output -- Contoh printf(“Hello!\n”); H e l l o ! \n output buffer
Streams: Output – Contoh (cont) printf(“Hello!\n”); H e l l o ! \n
Streams: Output – Contoh (cont) printf(“Hello!\n”); e l l o ! \n H
Streams: Output – Contoh (cont) printf(“Hello!\n”); l l o ! \n He
Streams: Output – Contoh (cont) printf(“Hello!\n”); l o ! \n Hel
Streams: Output – Contoh (cont) printf(“Hello!\n”); o ! \n Hell
Streams: Output – Contoh (cont) ! \n Hello printf(“Hello!\n”);
Streams: Output – Contoh (cont) printf(“Hello!\n”); \n Hello!
Streams: Output – Contoh (cont) printf(“Hello!\n”); Hello! _
Streams Antrian karakter dalam pipa yg di lihat dari sisi program. Urutan karakter di atur ke dalam suatu baris. Tiap baris: Dapat memiliki 0 atau lebih karakter. Di akhiri dengan karakter "newline“ ‘\n'
"Standard" Streams Standard streams: Berada di paling atas program stdin - standard input Biasanya dari keyboard stdout - standard output Biasanya ke screen stderr - standard error Berada di paling atas program #include <stdio.h> Dapat di-redirected
stdin: Input Data dibaca dari stdin (ke variabel) dengan fungsi scanf() Saat input berakhir, fungsi scanf() mengembalikan nilai khusus : EOF
Contoh: BacaData Input name, age, gender, idNumber
#include <stdio.h>
#include <stdio.h> /*************************************\ Baca info penting ttg dosen \**************************************/
#include <stdio.h> /*************************************\ Baca info penting ttg dosen \**************************************/ int main() { return 0; }
#include <stdio.h> /*************************************\ Baca info penting ttg dosen \**************************************/ int main() { char name[100] ; float age ; char gender ; int idNumber ; return 0; }
#include <stdio.h> /*************************************\ Baca info penting ttg dosen \**************************************/ int main() { char name[100] ; float age ; char gender ; int idNumber ; scanf("%s %f %c %d", name, &age, &gender, &idNumber); return 0; }
#include <stdio.h> /*************************************\ Baca info penting ttg dosen \**************************************/ int main() { char name[100] ; float age ; char gender ; int idNumber ; scanf("%s %f %c %d", name, &age, &gender, &idNumber); return 0; }
#include <stdio.h> /*************************************\ Baca info penting ttg dosen \**************************************/ int main() { char name[100] ; float age ; char gender ; int idNumber ; scanf("%s %f %c %d", name, &age, &gender, &idNumber); return 0; } Input: Joey 22.5 M 3825 Joey 22.5 M 3825
stdout:Output Data (cont., dari variabel) ditulis ke stdout dg fungsi printf(.
Contoh: Write Data Set nama ke “Joni” Set usia ke 22.5 Set jeniskelamin ke ‘M’ Set idNumber ke 3825 Output nama, usia, jeniskelamin, idNumber
Joni 22.5 M 3825 _ #include <stdio.h> /*****************************************\ Baca info penting ttg dosen \*****************************************/ int main() { char *nama = ”Joni" ; float usia = 22.5; char jeniskelamin = ’M'; int idNumber = 3825 ; printf("%s\n%f\n%c\n%d\n", nama, usia, jeniskelamin, idNumber); return 0; } Joni 22.5 M 3825 _
Input dan Output terformat Bentuk umum: printf(format-control-string, other-arguments); scanf(format-control-string, other-arguments); Contoh: printf(%s\n%f\n%c\n%d\n", nama, usia, eniskelamin, idNumber); scanf("%s %f %c %d", nama, &usia, &jeniskelamin, &idNumber);
printf -- Format-Control-String Menggambarkan data untuk output Berisi “conversion specifiers” dan “literal characters” Contoh: printf(“%s adalah %d tahun.\n”, nama,usia);
printf -- Format-Control-String (lanj.) Menggambarkan data untuk output Berisi “conversion specifiers” dan “literal characters” Contoh: printf(“%s adalah %d tahun.\n”, nama,usia); conversion specifiers
printf -- Format-Control-String (cont) Menggambarkan data untuk output Berisi “conversion specifiers” dan “literal characters” Contoh: printf(“%s adalah %d tahun.\n”, nama,usia); literal characters
printf – Argumen lainnya Untuk printf: variabel berisi data untuk output Contoh: printf(“%s adalah %d tahun.\n”, nama,usia);
scanf -- Format-Control-String Menggambarkan data untuk output Berisi “conversion specifiers” dan “literal characters” Contoh: scanf("%s%f%c%d“,nama,&usia,&jeniskelamin,&id); conversion specifiers
scanf – Argumen lainnya Untuk scanf: suatu “pointers” ke variabel dimana input akan disimpan. Contoh: scanf("%s%f%c%d“,nama,&usia,&jeniskelamin,&id);
scanf – Argumen lainnya Untuk scanf: suatu “pointers” ke variabel dimana input akan disimpan. Contoh: scanf("%s%f%c%d“,name,&usia,&jeniskelamin,&id); JANGAN pakai ‘&’ dlm string! Variabel bertipe int, float atau char perlu ‘&’ ‘&’ hanya untuk scanf !
Conversion Specifiers yg umum dalam informasi Numerik decimal integer: %d printf(“Berapa %d tambah %d?\n”, x, y); scanf(“%d”, &sum); float: %f printf(“%f dipangkatkan mjd...? ”, x); scanf(“%f”, &ans); double: scanf(“%lf”, &ans);
Conversion Specifiers untuk Informasi alphanumerik char: %c printf(“Huruf yang mengikuti%c?\n”,ch); scanf(“%c”, &nextchar); string: %s printf(“Nama: %s\n”, nama); scanf(“%s”, nama);
printf: Conversion Specifiers i atau d: menampilkan tanda decimal integer f: menampilkan nilai floating point e atau E: menampilkan nilai floating point dalam notasi exponensial g atau G: menampilkan nilai floating point dalam baik bentuk f atau e L: ditempatkan sblm conversion specifier float yg di indikasikan dg long double di tampilkan
scanf: Conversion Specifiers d: membaca tanda desimal integer scr opsional i: membaca tanda desimal integer atau hexadecimal integer secara opsional. i dan d: argumennya merupakan “pointer” ke integer int idNumber; scanf("%d", &idNumber);
scanf: Conversion Specifiers (lanj.) h atau l: ditempatkan sblm conversion specifiers integer utk mengindikasikan bahwa short atau long integer mjd input long int idNumber; scanf("%ld", &idNumber); l atau L: ditempatkan sblm conversion specifiers float utk mengindikasikan bahwa double atau long integer mjd input
Conversion Contoh Input octal integer Output integer sbg decimal
Conversion Contoh (cont) #include <stdio.h> int main() { int i ; scanf("%o", &i); printf("%d\n", i); return 0; }
Conversion Contoh (cont) #include <stdio.h> int main() { int i ; scanf("%o", &i); printf("%d\n", i); return 0; } _
Conversion Contoh (cont) #include <stdio.h> int main() { int i ; scanf("%o", &i); printf("%d\n", i); return 0; } _
Conversion Contoh (cont) #include <stdio.h> int main() { int i ; scanf("%o", &i); printf("%d\n", i); return 0; } _ i
Conversion Contoh (cont) #include <stdio.h> int main() { int i ; scanf("%o", &i); printf("%d\n", i); return 0; } _ i
Conversion Contoh (cont) #include <stdio.h> int main() { int i ; scanf("%o", &i); printf("%d\n", i); return 0; } 70 _ i
Conversion Contoh (cont) #include <stdio.h> int main() { int i ; scanf("%o", &i); printf("%d\n", i); return 0; } 70 _ i 56
Conversion Contoh (cont) #include <stdio.h> int main() { int i ; scanf("%o", &i); printf("%d\n", i); return 0; } 70 _ i 56
Conversion Contoh (cont) #include <stdio.h> int main() { int i ; scanf("%o", &i); printf("%d\n", i); return 0; } 70 56 _ i 56
Melewati Characters dlm Input Stream Melewati spasi kosong scanf("%d %d %d", &day, &month, &year); Alternatif Masukan data sebagai dd-mm-yyyy: 16-3-1999 Simpan tiap angka dalam variabel tanggal scanf("%d-%d-%d", &day, &month, &year);
Kesimpulan Input dr keyboard melalui stream stdin Output ke screen melalui stream stdout Stream carry characters Dibagi kedalam baris dengan karakter ‘\n’ input diakhiri dg nilai spesial: EOF Utk memakai fungsi pustaka C , hrs menyertakan stdio.h di header file Input dan output dpt diformat dan di konvert diantara tipe data