Popular Post

Posted by : ClownMan Saturday, August 1, 2015

Bahasa merupakan salah satu yang terpenting untuk berkomunikasi!, bayangkan jika anda bisa berdialog dengan komputer asik juga bukan ? nah berikut ini penulis akan membahas sedikit gimana cara berkomunikasi dengan komputer dengan bahasa pemprograman bahasa tingkat Tinggi yaitu Bahasa C selaku bahasa Tingkat tinggi,dasar pemprograman yang banyak dikembangkan sampai jaman sekarang ini, C telah banyak membantu perkembangan Bahasa komputer sebagai contoh banyak software canggih yang telah dilahirkannya seperti Keluarga Linux. terlalu panjang untuk dijabarkan disini! 


oke kita mulai Belajar C dari tingkat dasar ! 

BAB I : 

Bentuk dasar : 
------------- 
void main(){ 
//disini badan program diproses 

#include 
int main() 
printf("Oh_gayo lagi Nembak Pake sniffer\n"); 
return 0; 

Hasil keluarannya tampak dimonitor anda: 
---------------------------------------- 
oh_gayo lagi Nembak Pake sniffer 

Perhatikan : 

#include <--- #include untuk membuka file header/library file stdio.h yang dibutuhkan oleh fungsi printf (kita harus sertakan) 

int main() { <--- ini adalah fungsi utama pada saat program dijalankan 
<--- pada saat kita mengcompile suatu program selalu fungsi ini yang dijalankan 
printf(" test \n"); <--- fungsinya untuk mencetak text kelayar , \n artinya turun baris 

return 1; <--- nilai yang dikembalikan oleh fungsi utama bernilai true 

note 
tanda { = pembuka 
} = penutup 

1 : true 
0 : false 


Apakah anda bisa membayangkan hasil dari source code ini.. 
-------------------------------------------------------- 
int main() 
printf("Mr.Gayo\n"); 
printf("----------\n"); 
printf("Renjana Administrator\n"); 
printf("Komunity Crot Crew"); 
return 0; 

Bermain dengan tipe data : 
------------------------ 
Apakah tipe data itu ? 
Tipe data adalah jenis tipe dari suatu variable 
contoh : abc ->> merupakan string 
a ->> merupakan character 
1,2,3,... ->> merupakan bilangan integer 
1.001 ->> merupakan bilangan desimal (berkoma) 
dll 

nah didalam bahasa C terdapat tipe-tipe data yang menampung sesuai dengan data anda. Ada pun tipe data tersebut adalah sebagai berikut : 

Type ³ Length ³ Range 
------------------------------------------------------------------ 
unsigned char ³ 8 bits ³ 0 to 255 
char ³ 8 bits ³ -128 to 127 
enum ³ 16 bits ³ -32,768 to 32,767 
unsigned int ³ 16 bits ³ 0 to 65,535 
short int ³ 16 bits ³ -32,768 to 32,767 
int ³ 16 bits ³ -32,768 to 32,767 
unsigned long ³ 32 bits ³ 0 to 4,294,967,295 
long ³ 32 bits ³ -2,147,483,648 to 2,147,483,647 
float ³ 32 bits ³ 3.4 * (10**-38) to 3.4 * (10**+38) 
double ³ 64 bits ³ 1.7 * (10**-308) to 1.7 * (10**+308) 
long double ³ 80 bits ³ 3.4 * (10**-4932) to 1.1 * (10**+4932) 

nah kira-kira jenis tipe data apa yang kita gunakan , itu tergantung dari kebutuhan saat kita membuat program! 

contoh pemakaian sebagai berikut : 
-------------------------------- 
Bermain dengan tipe data 
#include 
int main() 
int angka; // int = tipe data , angka = merupakan variabel penampung 
angka=1; 
printf("nilai dari angka : %d\n", angka); 
angka=5; 
printf("nilai dari angka : %d\n", angka); 
angka=-8; 
printf("nilai dari angka : %d\n", angka); 
return 0; 

contoh lain : 
------------ 
#include 
int main() 
int a = 2; 
float x = 17.1, y = 8.95, z; 
char c; 

c = (char)a + (char)x; 
c = (char)(a + (int)x); 
c = (char)(a + x); 
c = a + x; 

z = (float)((int)x * (int)y); 
z = (float)((int)(x * y)); 
z = x * y; 
return 0; 
note : tanda // artinya komentar yang anda sisipkan jika hanya untuk satu baris jika lebih anda bisa mengunakan 

seperti ini : 
/* 
komentarnya disini 
*/ 

Apa yang terdapat dalam tanda itu tidak akan dieksekusi (dijalankan/running) oke!, gimana sekarang tidak terlalu sulit bukan? :p 

Program mengenal tipe data 
-------------------------- 
#include 
int main() 
int a; /* simple integer type */ 
long int b; /* long integer type */ 
short int c; /* short integer type */ 
unsigned int d; /* unsigned integer type */ 
char e; /* character type */ 
float f; /* floating point type */ 
double g; /* double precision floating point */ 

a = 1023; 
b = 2222; 
c = 123; 
d = 1234; 
e = 'X'; 
f = 3.14159; 
g = 3.1415926535898; 

printf("a = %d\n", a); /* decimal output */ 
printf("a = %o\n", a); /* octal output */ 
printf("a = %x\n", a); /* hexadecimal output */ 
printf("b = %ld\n", b); /* decimal long output */ 
printf("c = %d\n", c); /* decimal short output */ 
printf("d = %u\n", d); /* unsigned output */ 
printf("e = %c\n", e); /* character output */ 
printf("f = %f\n", f); /* floating output */ 
printf("g = %f\n", g); /* double float output */ 

printf("\n"); 
printf("a = %d\n", a); /* simple int output */ 
printf("a = %7d\n", a); /* use a field width of 7 */ 
printf("a = %-7d\n", a); /* left justify in field of 7 */ 

c = 5; 
d = 8; 
printf("a = %*d\n", c, a); /* use a field width of 5 */ 
printf("a = %*d\n", d, a); /* use a field width of 8 */ 

printf("\n"); 
printf("f = %f\n", f); /* simple float output */ 
printf("f = %12f\n", f); /* use field width of 12 */ 
printf("f = %12.3f\n", f); /* use 3 decimal places */ 
printf("f = %12.5f\n", f); /* use 5 decimal places */ 
printf("f = %-12.5f\n", f); /* left justify in field */ 
return 0; 


PERHATIKAN TABLE berikut ini 
# Category ³ Operator ³ What it is (or does) 
--------------------------------------------------------------------------- 
1. Highest ³ () ³ Function call 
³ [] ³ Array subscript 
³ -> ³ C++ indirect component selector 
³ :: ³ C++ scope access/resolution 
³ . ³ C++ direct component selector 
--------------------------------------------------------------------------- 
2. Unary ³ ! ³ Logical negation (NOT) 
³ ~ ³ Bitwise (1's) complement 
³ + ³ Unary plus 
³ - ³ Unary minus 
³ ++ ³ Preincrement or postincrement 
³ -- ³ Predecrement or postdecrement 
³ & ³ Address 
³ * ³ Indirection 
³ sizeof ³ (returns size of operand, in bytes) 
³ new ³ (dynamically allocates C++ storage) 
³ delete ³ (dynamically deallocates C++ storage) 
--------------------------------------------------------------------------- 
3. Multipli- ³ * ³ Multiply 
cative ³ / ³ Divide 
³ % ³ Remainder (modulus) 
--------------------------------------------------------------------------- 
4. Member ³ .* ³ C++ dereference 
access ³ ->* ³ C++ dereference 
--------------------------------------------------------------------------- 
5. Additive ³ + ³ Binary plus 
³ - ³ Binary minus 
--------------------------------------------------------------------------- 
6. Shift ³ << ³ Shift left 
³ >> ³ Shift right 
--------------------------------------------------------------------------- 
7. Relational ³ < ³ Less than 
³ <= ³ Less than or equal to 
³ > ³ Greater than 
³ >= ³ Greater than or equal to 
--------------------------------------------------------------------------- 
8. Equality ³ == ³ Equal to 
³ != ³ Not equal to 
--------------------------------------------------------------------------- 
9. ³ & ³ Bitwise AND 
--------------------------------------------------------------------------- 
10. ³ ^ ³ Bitwise XOR 
--------------------------------------------------------------------------- 
11. ³ | ³ Bitwise OR 
--------------------------------------------------------------------------- 
12. ³ && ³ Logical AND 
--------------------------------------------------------------------------- 
13. ³ || ³ Logical OR 
--------------------------------------------------------------------------- 
14. Conditional³ ?: ³ (a ? x : y means "if a then x, else y") 
--------------------------------------------------------------------------- 
15. Assignment ³ = ³ Simple assignment 
³ *= ³ Assign product 
³ /= ³ Assign quotient 
³ %= ³ Assign remainder (modulus) 
³ += ³ Assign sum 
³ -= ³ Assign difference 
³ &= ³ Assign bitwise AND 
³ ^= ³ Assign bitwise XOR 
³ |= ³ Assign bitwise OR 
³ <<= ³ Assign left shift 
³ >>= ³ Assign right shift 
--------------------------------------------------------------------------- 
16. Comma ³ , ³ Evaluate 
--------------------------------------------------------------------------- 

contoh programnya 
----------------- 
#include 
int main() 
char mask; 
char number[6]; 
char and, or, xor, inv, index; 

number[0] = 0X00; 
number[1] = 0X11; 
number[2] = 0X22; 
number[3] = 0X44; 
number[4] = 0X88; 
number[5] = 0XFF; 

printf(" nmbr mask and or xor inv\n"); 
mask = 0X0F; 
for (index = 0 ; index <= 5 ; index++) 
and = mask & number[index]; 
or = mask | number[index]; 
xor = mask ^ number[index]; 
inv = ~number[index]; 
printf("%5x %5x %5x %5x %5x %5x\n", 
number[index], mask, and, or, xor, inv); 

printf("\n"); 
mask = 0X22; 
for (index = 0 ; index <= 5 ; index++) 
and = mask & number[index]; 
or = mask | number[index]; 
xor = mask ^ number[index]; 
inv = ~number[index]; 
printf("%5x %5x %5x %5x %5x %5x\n", 
number[index], mask, and, or, xor, inv); 

return 0; 

BAB II : Perulangan 

Terkadang sangat melelahkan jika kita mencetak sebuah kata "hello world " sebanyak 1000 kali dengan adanya perulangan semua jadi simple! macam-macam perulangan yang terdapat pada Bahaca c : 
1.for 
2.while 
3.do-while 

contoh pemakaian sebagai berikut : 
-------------------------------- 
1. for (awal ;kondisi ;akhir) 


Perhatikan soure code dibawah ini 

contoh : 
#include 
int main() 
int angka; 
for(angka = 0 ; angka < 1000 ; angka = angka + 1) 
printf("gayo ganteng lo\n"); 
return 0; 
/* Outputnya : mencetak gayo ganteng sebanyak seribu kali (perhatikan kondisinya) 
Jika bernilai True (benar) maka statement didalam { } akan dijalankan 
Jika bernilai False kondisi didalam perulangan tidak akan dijalankan 
*/ 

2.while 

contoh pemakaian sebagai berikut : 
-------------------------------- 
awal =0; 
while (kondisi) { 
awal=awal+1; /// variabel awal akan bertambah sesuai dengan dengan kondisi didalam = while(kondisi) 

contoh : 
#include 
int main() 
int index; 

index = 0; 
while (index < 10) 
printf("mr.Udien\n"); 
index = index + 1; 

return 0; 

3.do-while 

contoh pemakaian sebagai berikut : 
-------------------------------- 
awal =0; 
do{ 
awal=awal+1 
}while(kondisi) 


contoh : 
#include 
int main() 
int index; 

index = 0; 
do 
printf("oh_gayo\n"); 
index = index + 1; 
} while (index < 10); 

return 0; 

note : 
awal=awal+1; /// dapat ditulis dengan awal+=1; (ini sama saja artinya) 

nilai awal selalu ditambah dengan angka satu, contoh : 

int main() 
int x = 0, y = 2, z = 1025; 
float a = 0.0, b = 3.14159, c = -37.234; 
x = x + 1; 
x++; 
++x; 
z = y++; 
z = ++y; 

y = y - 1; 
y--; 
--y; 
y = 3; 
z = y--; 
z = --y; 


a = a + 12; 
a += 12; 
a *= 3.2; 
a -= b; 
a /= 10.0; 

a = (b >= 3.0 ? 2.0 : 10.5 ); 
if (b >= 3.0) 
a = 2.0; 
else 
a = 10.5; 

c = (a > b ? a : b); 
c = (a > b ? b : a); 

return 0; 

Gimana dengan konstanta suatu nilai : 
kita dapat menggunakan #DEFINE 

Contoh : 

#define START 0 
#define ENDING 9 
#define MAX(A,B) ((A)>(B)?(A):(B)) 
#define MIN(A,B) ((A)>(B)?(B):(A)) 
int main() 
int index, mn, mx; 
int count = 5; 

for (index = START ; index <= ENDING ; index++) 
mx = MAX(index, count); 
mn = MIN(index, count); 
printf("Max is %d and min is %d\n", mx, mn); 

return 0; 


BAB III : Kondisi 

Kondisi sangat perlu sebagai pembatas atau pengecekan suatu nilai, ada 2 bentuk penulisan kondisi : 
1. if 
2. switch -case 

1. if(kondisi) { 


if(kondisi ){ 
}else{ 
if(kondisi){ 

}else{ 


contoh pemakaian sebagai berikut : 
-------------------------------- 
a = 4; 
if (a < 2 ) // apakah a lebih besar dari 4 

if (a < 2 ) { // apakah a lebih besar dari 4 
//akan mengeksekusi didalam sini 

if (a < 2 ) { // apakah a lebih besar dari 4 

//akan mengeksekusi didalam sini Jika kondisinya berlaku benar 
}else{ //selain itu 
//akan mengeksekusi didalam sini jika Kondisinya berlaku salah 


1. switch-case 

contoh pemakaian sebagai berikut : 
-------------------------------- 
awal = 4; 
swicth(awal){ 
case '1' : printf("ini angka 1"); break; 
case '2' : printf("ini angka 2"); break; 
case '3' : printf("ini angka 3"); break; 
case '4' : printf("ini angka 4"); break; 
default : printf("angka tersebut tidak ada"); 

perhatikan source diatas 
pertama kali awal=4 
sewaktu masuk kedalam kondisi swith(kondisi) 
apakah 4 termasuk didalam switch 
jika terdapat maka baris : printf("ini angka 4"); //akan dijalankan 
jika tidak terdapat maka akan lompat ke default : printf("angka tersebut tidak ada"); 

coba sekarang anda rubah awal =1; 
apa yang terjadi ? // pikirkan sendiri :p 

Contoh lain: 
operand =ADD; 
switch (operand) { 
case MULTIPLY: x *= y; break; 
case DIVIDE: x /= y; break; 
case ADD: x += y; break; 
case SUBTRACT: x -= y; break; 
case INCREMENT2: x++; 
case INCREMENT1: x++; break; 
case EXPONENT: 
case ROOT: 
case MOD: printf("Not done\n"); break; 
default: printf("Bug!\n"); 

exit(1); 


contoh kombinasinya : 
------------------- 
#include 
int main() 
int index; 

for(index = 1 ; index < 101 ; index = index + 1) 
if ((index >= 32) && (index <= 39)) 
printf("%5d\n", index); 

return 0; 

atau bentuk begini 
#include 
int main() 
int index; 

index = 1; 
do 
printf("nilai sekarang %2d",index); 
if (index == 3) 
printf(" ini sama dengan 3."); 
if (index == 7) 
printf(" ini sama dengan 7."); 
printf("\n"); 
index = index + 1; 
} while (index < 11); 

return 0; 

----- pikirkan kembali bentuk seperti dibawah ini ---------------- 
#include 
#define OPTION_1 /* This defines the preprocessor control */ 
#define PRINT_DATA /* If this is defined, we will print */ 
#ifndef OPTION_1 
int count_1 = 17; /* This exists if OPTION_1 is not defined */ 
#endif 
int main() 
int index; 
#ifndef PRINT_DATA 
printf("No results will be printed with this version of " 
" the program IFNDEF.C\n"); 
#endif 
for (index = 0 ; index < 6 ; index++) 
#ifdef PRINT_DATA 
printf("In the loop, index = %d", index); 
#ifndef OPTION_1 
printf(" count_1 = %d", count_1); /* This may be printed */ 
#endif 
printf("\n"); 
#endif 

return 0; 

// apakah anda bisa membayangkannya ? apa maksud dari #ifndef - #endif 

contoh Mengenal enum 


contoh pemakaian sebagai berikut : 
-------------------------------- 
#include 
int main() 
enum {WIN, TIE, BYE, LOSE, NO_SHOW} result; 
enum {SUN, MON, TUE, WED, THU, FRI, SAT} days; 

result = WIN; 
printf(" WIN = %d\n", result); 
result = LOSE; 
printf(" LOSE = %d\n", result); 
result = TIE; 
printf(" TIE = %d\n", result); 
result = BYE; 
printf(" BYE = %d\n", result); 
result = NO_SHOW; 
printf("NO_SHOW = %d\n\n", result); 

for(days = MON ; days < FRI ; days++) 
printf("The day code is %d\n", days); 

return 0; 


BAB IV : fungsi 

Bayangkan jika program anda sekarang dalam baris yang sangat panjang, merepotkan sekali bukan nah dengan fungsi kita dapat menyederhakan sebuah program menjadi jelas dan mudah di baca 

okeh.. kita mulai lagi. 
contoh pemakaian sebagai berikut : 
-------------------------------- 
#include 
void writename(); // ini sebuah fungsi 
void writename() // ini sebuah fungsi bernama writename() 
printf("Oh_gayo\n"); 

int main() 
int index; 

for(index = 0 ; index < 10 ; index = index + 1) 
writename(); // panggil fungi yang bernama writename(); 
return 0; 

contoh lain ; 

#include 

int tempcalc(int centtemp); 

int main() 
int count; 
int farenheit; /* temperature farenheit */ 
int centigrade; /* temperature centigrade */ 

printf("Table Farenheit temperature \n\n"); 
for(count = -2 ; count <= 12 ; count = count + 1) 
centigrade = 10 * count; 
farenheit = tempcalc(centigrade); 
printf(" C =%4d F =%4d ", centigrade, farenheit); 
if (centigrade == 0) 
printf(" Freezing point of water"); 
if (centigrade == 100) 
printf(" Boiling point of water"); 
printf("\n"); 
} /* akhir dari perulangan*/ 

return 0; 

int tempcalc(int centtemp) 
int faren; 

faren = 32 + (centtemp * 9)/5; 
return (faren); 



note : 
ingat , didalam sebuah program terdapat yang namanya variabel local dan grobal, jika kita ingin melempar sebuah varibel kesuatu fungsi maka kita dapat melakukan hal sebagai berikut 

model passing by value 
---------------------- 
void fungsi (int tampung){ 
printf("%d",tampung); /// disini nilai 5 akan tercetak dari operan 
dibawah 

void main(){ 
int a=5; 
cetak(a); ///lempar variabel a ke fungsi cetak diatas 

gimana jika kita ingin melempar sebuah 2 buah varibel 
void fungsi (int tampung, float tampung1){ 
printf("%d",tampung); /// disini nilai 5 akan tercetak dari operan dibawah 
printf("%f",tampung1); /// disini nilai 4.5 akan tercetak dari operan dibawah 

void main(){ 
int a=5; 
float b=4.5 
cetak(a,b); ///lempar variabel a ke fungsi cetak diatas 

model passing by pointer 
------------------------ 
void testing(int &a){ 
printf("%d",*a); 

void main(){ 
int a=5; 
testing(&a); 

perhatikan tipe data yang anda lemparkan ,,, dia harus di tampung didalam tipe yang sama (jika memungkinkan) 

contoh kombinasi : 
#include 
void header(void); 
void square(int number); 
void ending(void); 

int sum; /* ini global variable */ 

int main(void) 
int index; // ini local variabel 

header(); /* ini memanggil fungsi header */ 
for (index = 1 ; index <= 7 ; index++) 
square(index); /* ini memanggil fungsi square */ 
ending(); /* ini memanggil fungsi ending */ 

return 0; 

void header(void) /* ini fungsi header */ 
sum = 0; /* inisialisasi dari sum=0 */ 
printf("ini adalah header dari square program\n\n"); 

void square(int number) /* ini fungsi square */ 
int numsq; 

numsq = number * number; 
sum += numsq; 
printf("nilai square %d adalah %d\n", number, numsq); 

void ending(void) /* ini fungsi ending */ 
printf("\njumlah dari square adalah %d\n", sum); 

/* ouputnya 
ini adalah header dari square program 
nilai square 1 adalah 1 
nilai square 2 adalah 4 
nilai square 3 adalah 9 
nilai square 4 adalah 16 
nilai square 5 adalah 25 
nilai square 6 adalah 36 
nilai square 7 adalah 49 
jumlah dari square adalah :140 
*/ 


BAB V: Mengenal Array 

Array adalah kumpulan tipe data yang sejenis, kita dapat mendeklarasikan Array kedalam berbagai Dimensi 

tampung[5]; // 1 Dimensi 
tampung[5][5]; // 2 Dimensi 
tampung[5][5][3]; // 3 Dimensi 
... 
....... 
dan seterusnya 
cara pendeklarasian : 
int tampung[5]; 
float tampung[5]; 
char tampung[20]; 
int tampung[5][5]; 

angka 5 menjelaskan bawah kita mempunyai 5 data didalam variabel tampung cara pengisian langsung ; 

int tampung[5] ={1,2,3,4,5}; 
float tampung[5] = { 1.0.2.0.3.0.4.0.5.0}; 
char tampung[5] = {'a','b','c','d','e'}; 


contoh pemakaian sebagai berikut : 
-------------------------------- 
#include 
#include 
char my_string[20] = "C hebat!"; 
int main() 
int index; 
printf("%s\n", my_string); 
for (index = 0 ; my_string[index] ; index = index + 1) 
printf("%c", my_string[index]); 
printf("\n"); 

for(index = strlen(my_string) ; index > 0 ; index = index - 1) 
printf("%c", my_string[index - 1]); 
printf("\n"); 

return 0; 



contoh lain : 

#include 
#include 

int main() 
int index; 
char stuff[20], *pt; 

strcpy(stuff, "This is a neat test."); 
pt = stuff; 
for(index = 0 ; index < 20 ; index++) 
printf("A character is ---> %c\n", *pt); 
pt++; 

return 0; 

#include 
#include 
int main() 
int index; 
char string1[6], string2[6], string3[6], all_three[18]; 

strcpy(string1, "one"); //mencopy string "one" kedalam varibel 
string1 
strcpy(string2, "two"); //idem 
strcpy(string3, "three"); // idem 

strcpy(all_three, string1); 
strcat(all_three, " "); // mengosongkan isi variabel all_tree; 

strcat(all_three, string2); // gabungkan isinya 
strcat(all_three, " "); 
strcat(all_three, string3); 

for(index = 0 ; index < 10 ; index = index + 1) 
printf("hasil stringnya ---> %s\n", all_three); 
return 0; 


#include 
int main() 
int index, array1[10], array2[10], arrays[10]; 

for(index = 0 ; index < 10 ; index = index + 1) 
array1[index] = 2 + 2 * index; 
array2[index] = 10 * (index + 1); 

for(index = 0 ; index < 10 ; index = index + 1) 
arrays[index] = array1[index] + array2[index]; 

for(index = 0 ; index < 10 ; index = index + 1) 
printf("%4d %4d + %4d = %4d\n", (index + 1), array1[index], 
array2[index], arrays[index]); 

return 0; 

Contoh penggunaan Array 2 Dimensi 
-------------------------------- 
#include 
int main() 
int i, j; 
int big[8][8], large[25][12]; 

for (i = 0 ; i < 8 ; i++) 
for (j = 0 ; j < 8 ; j++) 
big[i][j] = i * j; /* perkalian tables */ 

for (i = 0 ; i < 25 ; i++) 
for (j = 0 ; j < 12 ; j++) 
large[i][j] = i + j; /* penambahan tabel*/ 

big[2][6] = large[24][10] * 22; 
big[2][2] = 5; 
big[big[2][2]][big[2][2]] = 177; /* big[5][5] = 177; */ 

for (i = 0 ; i < 8 ; i++) 
for (j = 0 ; j < 8 ; j++) 
printf("%5d ", big[i][j]); 
printf("\n"); 

return 0; 


BAB VI: Bermain dengan file 

untuk bermain dengan file kita harus mendeklarasikannya terlebih dahulu; 
contoh; 

FILE *ptrfile ; //pointer penunjuk kesebuah file 
ptrfile = fopen(outfilename, "w"); /// membuka suatu file ,ditampung disebuah ptrfile 
fclose (outfilename); // menutup kembali file yang barusan dibuka 

perhatikan tanda "w " , itu disebut dengan modus 
modus sangat perlu jika kita bermain dengan file : 
r ³ Open for reading only 
w ³ Create for writing 
³ If a file by that name already exists, it will be overwritten. 
a ³ Append; open for writing at end of file, or create for 
³ writing if the file does not exist. 
r+ ³ Open an existing file for update (reading and writing) 
w+ ³ Create a new file for update (reading and writing). 
³ If a file by that name already exists, it will be overwritten. 
a+ ³ Open for append; open for update at the end of the file, or 
³ create if the file does not exist. 


contoh : 

#include 
int main() 
FILE *infile, *outfile, *printer; 
char infilename[25], outfilename[25]; 
int c; 
printf("Enter input file name ----> "); 
scanf("%s", infilename); 
infile = fopen(infilename, "r"); 

printf("Enter output file name ---> "); 
scanf("%s", outfilename); 
outfile = fopen(outfilename, "w"); 
printer = fopen("PRN", "w"); 
do 
c = getc(infile); 
if (c != EOF) 
putchar(c); 
putc(c, outfile); 
putc(c, printer); 
} while (c != EOF); 
fclose(printer); 
fclose(infile); 
fclose(outfile); 
return 0; 


contoh lain : 
#include 
int main() 
FILE *infile; 
char *c, infilename[25], inputline[100]; 
int line = 1; 

printf("Enter input file name ----> "); 
scanf("%s", infilename); 
infile = fopen(infilename, "r"); 

printf("%5d", line); 
do 
c=fgets(inputline, 100, infile); /* baca perbaris */ 
if (c != NULL) 
printf("%5d %s", line, inputline); 
line++; 
} while (c != NULL); 

fclose(infile); 

return 0; 



#include 
int main() 
FILE *fp1; 
char oneword[100], filename[25]; 
char *c; 

printf("Enter filename -> "); 
scanf("%s", filename); /* baca nama file */ 
fp1 = fopen(filename, "r"); 
if (fp1 == NULL) 
printf("File doesn't exist\n"); 
exit (1); 
else 
do 
c = fgets(oneword, 100, fp1); /* baca perbaris dari file*/ 
if (c != NULL) 
printf("%s", oneword); /* tampilkan dimonitor */ 
} while (c != NULL); /* ulangi sampai ketemu NULL 
*/ 
fclose(fp1); 

return 0; 



BAB IX: Mengenal struct 

struct dalah kumpulan dari berbagai tipe data menjadi satu. 
cara pendeklarasian : 
struct nama{ 
int a; 
float b ; // berbeda bisa dijadikan dalam 1 struct; 
char z; 
}; 

contoh pemakaian sebagai berikut : 
-------------------------------- 
struct nama{ 
int a; 
float b ; 
char z; 
}; 

void main() { 
nama.a =5; 
nama.b =4.0; 
nama.z = 'a'; 


contoh lain berupa Array of struct 
#include 
#include 
struct 
char what[25]; 
int legs, arms; 
} object[6]; 

int main() 
int index; 

strcpy(object[0].what, "human being"); 
object[0].legs = 2; 
object[0].arms = 2; 

strcpy(object[1].what, "dog"); 
object[1].legs = 4; 
object[1].arms = 0; 

strcpy(object[2].what, "television set"); 
object[2].legs = 4; 
object[2].arms = 0; 

strcpy(object[3].what, "chair"); 
object[3].legs = 4; 
object[3].arms = 2; 

strcpy(object[4].what, "centipede"); 
object[4].legs = 100; 
object[4].arms = 0; 

strcpy(object[5].what, "spider"); 
object[5].legs = 6; 
object[5].arms = 0; 

for(index = 0 ; index < 6 ; index++) 
printf("A %s has %d legs and %d arms.\n", object[index].what, 
object[index].legs, object[index].arms); 

return 0; 


contoh kombinasinya , menggunakan pointer: 

#include 
#include 
struct 
char what[25]; 
int legs, arms; 
} object[6], *point; 

int main() 
int index; 

strcpy(object[0].what, "human being"); 
object[0].legs = 2; 
object[0].arms = 2; 

strcpy(object[1].what, "dog"); 
object[1].legs = 4; 
object[1].arms = 0; 

strcpy(object[2].what, "television set"); 
object[2].legs = 4; 
object[2].arms = 0; 

strcpy(object[3].what, "chair"); 
object[3].legs = 4; 
object[3].arms = 2; 

strcpy(object[4].what, "centipede"); 
object[4].legs = 100; 
object[4].arms = 0; 

strcpy(object[5].what, "spider"); 
object[5].legs = 6; 
object[5].arms = 0; 

point = object; 
for(index = 0 ; index < 6 ; index++) 
printf("A %s has %d legs and %d arms.\n", point->what, 
point->legs, point->arms); 
point++; 

return 0; 


#include 
#include 

struct child 
char initial; 
int age; 
int grade; 
} *boy, *girl; 

int main() 
boy = (struct child *)malloc(sizeof(struct child)); 

boy->initial = 'R'; 
boy->age = 15; 
boy->grade = 75; 

girl = (struct child *)malloc(sizeof(struct child)); 

girl->age = boy->age - 1; 
girl->grade = 82; 
girl->initial = 'H'; 

printf("%c is %d years old and got a grade of %d\n", 
girl->initial, girl->age, girl->grade); 

printf("%c is %d years old and got a grade of %d\n", 
boy->initial, boy->age, boy->grade); 

return 0; 


#include 
#include 

struct child 
char initial; 
int age; 
int grade; 
} *kids[12]; 

int main() 
int index; 

for (index = 0 ; index < 12 ; index++) 
kids[index] = (struct child *)malloc(sizeof(struct child)); 
kids[index]->initial = 'A' + index; 
kids[index]->age = 16; 
kids[index]->grade = 84; 

kids[3]->age = kids[5]->age = 17; 
kids[2]->grade = kids[6]->grade = 92; 
kids[4]->grade = 57; 

*kids[10] = *kids[4]; /* Structure assignment */ 

for (index = 0 ; index < 12 ; index++) 
printf("%c is %d years old and got a grade of %d\n", 
kids[index]->initial, kids[index]->age, 
kids[index]->grade); 

return 0; 



BAB X: Program Penekanan tombol keybord 

#include 
#include 

int main() 
char input_char; 

printf("Hit any key - to stop hit a $\n"); 
do 
input_char = getch(); 
printf("Input character is %c, numerical value is %3d\n", 
input_char, input_char); 
} while (input_char != '$'); 

return 0; 


contoh lain 

#include 
#include 
char storage[80]; 
int main() 
char c; 
int index = 0; 

printf("Tekan sembarang character, keluar dari program tekan X\n"); 

do 
c = getch(); /* ambil sebuah character */ 
if (index < 79) /* batas dari 79 characters */ 
storage[index] = c; 
index++; 
putchar(c); /* tampilkan hit key */ 
} while (c != 'X'); 
storage[index] = 0; 
printf("%s\n", storage); 
printf("\nAkhir dari program.\n"); 

return 0; 



Waw... asik juga berkomunikasi dengan komputer dikala suntuk! 

ini adalah dasar-dasar pemprograman C. kembangkan lagi sesuai kreatifitas dan imajinasi anda. semoga kita tidak hanya menjadi script kidde terus!, yang tahunya hanya mengcompile dan binggung jika terjadi error :)) . 


NOTE : Semua program ini dibuat dan dicompile dengan Borland C 3.1. 

Original Authors : 

copyright(c)
Penulis : oh_gayo (renjana@hackermail.com) 
Press : ISD (Indohack Security Development)

Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © Komputer Skills (Serba Serbi Tehnik Komputer) - Date A Live - Powered by Blogger - Designed by Johanes Djogan - Published By Responsive blogger Templates