Program array sederhana

Ini sebenarnya tugas pertama kuliah saya struktur data di Unikom, membuat sebuah program array dengan nama, nah susahnya adalah lagi2 masalah pointer di bahasa C. walaupun kalo diruning masih ada error tapi alhamdulillah jalan…kalo ada yang mau lihat dan kalo bisa comment tentang masalah pointer..silakan…ini codenya


#include
#include
#define maks_nama 100
#define panjang_nama 100

void create_nama(char *nama);
void isi_nama(char nama[maks_nama][panjang_nama], int *n);
char *nama_terkecil(char nama[maks_nama][panjang_nama], int n);
char *nama_terbesar(char nama[maks_nama][panjang_nama], int n);
void tampil_nama(char nama[maks_nama][panjang_nama], int n);

int main(int argc, char *argv[])
{
char nama[maks_nama][panjang_nama];
int i,n;

create_nama(nama);
isi_nama(nama,&n);
tampil_nama(nama,n);

system("PAUSE");
return 0;
}

void create_nama(char *nama)
{
int i;

for(i=0; i<=maks_nama; i++)
{
strcpy(&nama[i]," ");
}
}

void isi_nama(char nama[maks_nama][panjang_nama], int *n)
{
int i;

printf("Masukan jumlah isi data : ");
scanf("%i",n);
printf("=============================\n");
for(i=0; i<*n; i++)
{
printf("Nama ke-%i : ",i+1);
scanf("%s",nama[i]);
}
}

char *nama_terkecil(char nama[maks_nama][panjang_nama], int n)
{
int i;
char *min[maks_nama][panjang_nama];

strcpy(&min[maks_nama][panjang_nama],nama[0]); //min = nama(0)
for(i=1; i<n; i++)
{
if(strlen(nama[i]) <= strlen(&min[maks_nama][panjang_nama])) // if(nama(i) <= min)
{
strcpy(&min[maks_nama][panjang_nama],nama[i]); //min = nama(i)
}
}

return &min[maks_nama][panjang_nama];
}

char *nama_terbesar(char nama[maks_nama][panjang_nama], int n)
{
int i;
char *max[maks_nama][panjang_nama];

strcpy(&max[maks_nama][panjang_nama],nama[0]);
for(i=1; i= strlen(&max[maks_nama][panjang_nama]))
{
strcpy(&max[maks_nama][panjang_nama],nama[i]);
}
}

return &max[maks_nama][panjang_nama];
}

void tampil_nama(char nama[maks_nama][panjang_nama], int n)
{

int i;
char *max[maks_nama][panjang_nama];
char *min[maks_nama][panjang_nama];

printf("=============================\n");
for(i=0; i<n; i++)
{
printf("Nama ke-%i : %s\n",i+1,&nama[i]);
}

printf("=============================\n");

printf("Nama Terbesar : %s\n",nama_terbesar(nama,i));
printf("Nama Terkecil : %s\n",nama_terkecil(nama,i));

}

berharap bangat ada yang ngerti error pointernya gemana ya???moga berguna..

2 thoughts on “Program array sederhana

Silahkan Komentar...

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s