Assalamu’alaikum warahmatullahi wa barakatuh.

Halo sobat redaksi, berjumpa lagi dengan saya tentunya untuk membahas tentang pemrograman bahasa C.

Pada kesempatan kali ini saya akan mencoba membahas apa itu variabel pointer dan bagaimana penggunaannya dalam fungsi.

Pointer adalah suatu variabel yang menyimpan alamat dari suatu variabel atau lokasi data yang lain. Pointer berguna untuk mentransfer data yang memiliki kapasitas besar melalui suatu fungsi.

Yuk, langsung saja kita coba membuat program tentang pointer.

1. Membuat program untuk menyimpan bilangan pecahan acak sebanyak 12 bilangan, yang disimpan dalam suatu array. Mengurutkan bilangan-bilangan tersebut dan menampilkan sebelum dan sesudah diurutkan menggunakan indeks array dan pointer.

Caranya, ketik kode program seperti di bawah ini.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()
{
static int a,b[16],c,d;
char e[16],*f;
menu:
printf(“\n Angka sebelum diurutkan …\n”);
for(a=1;a<13;a++)
{
printf(” Angka ke %d = “,a);
scanf(“%d”,&b[a]);
}
printf(“\n Angka setelah diurutkan …\n”);
for(a=1;a<13;a++)
{
for(d=a+1;d<13;d++)
{
if(*(b+a)>*(b+d))
{
c=*(b+d);
*(b+d)=*(b+a);
*(b+a)=c;
}
}
printf(” Angka ke %d = %d\n”,a,*(b+a));
}
printf(“\n Ketik ‘exit’ untuk keluar …\n”);
gets(e);
printf(” “);
gets(e);
f=strlwr(e);
if(strcmp(f,”exit”)==0);
else
{
system(“cls”);
goto menu;
}
}

Setelah itu tampilkan program seperti dibawah ini.

  • Facebook
  • Twitter
  • Google+
  • Pinterest

2. Membuat program yang menyimpan data karakter ‘X’ pada suatu array berdimensi 12 x12, kemudian menampilkan menggunakan indeks pointer. Caranya ketik kode program seperti di bawah ini.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()
{
static int a[12][12],b,c,*d,e,f,g;
char h[8],*i;
menu1:
g=1;
for(e=0;e<12;e++)
{
for(f=0;f<12;f++)
a[e][f]=48;
}
menu2:
system(“cls”);
d=&a;
printf(“\n\r”);
for(e=1;e<13;e++)
{
for(f=1;f<13;f++)
printf(“%2c”,*d++);
puts(“”);
}
if(g>1)
{
printf(“\n Ketik ‘lanjut’ untuk melanjutkan.”);
printf(“\n Ketik ‘ulang’ untuk mengulang dari awal.”);
printf(“\n Ketik ‘exit’ untuk keluar.\n “);
gets(h);
gets(h);
i=strlwr(h);
if(strcmp(i,”lanjut”)==0)
{
g=1;
goto menu2;
}
else if(strcmp(i,”ulang”)==0)
goto menu1;
else if(strcmp(i,”exit”)==0);
else goto menu2;
}
else
{
g++;
printf(“\n Masukkan koordinat matrix dengan jarak 1 – 12 …\n “);
scanf(“%d%d”,&b,&c);
–b;
–c;
a[b][c]=120;
goto menu2;
}
}

Kemudian tampilkan programnya seperti di bawah ini.

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Setelah itu kita bisa memasukkan koordinat matriks sesuai yang kita inginkan dari keyboard. Contohnya kita memasukan koordinat 3 3. Maka karakter x akan muncul pada kolom ketiga dan baris ketiga seperti gambar di bawah ini.

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Nah, kita juga bisa melanjutkan untuk memasukkan koordinat matriks lagi dengan mengetik ‘lanjut’ maka karakter x yang pertama muncul akan tetap ada. Apabila kita mengetik ‘ulang’ maka karakter x yang telah muncul akan direset. Kita juga bisa keluar dari program dengan mengetik ‘exit’.

Baiklah teman-teman, sekian pembahan dari saya. Mohon maaf apabila ada kesalahan. Terimakasih dan semoga bermanfaat.

Wassalamu’alaikum:)