String
String
STRING
String
String
didenisikan
sebagai
kumpulan
karakter
(array
of
character).
Tipe
data
string
sebenarnya
6dak
ada
dalam
bahasa
C.
String
merupakan
6pe
data
bentukan
dari
6pe
data
char.
Posisi
terakhir
dari
elemen
diisi
\0
atau
null.
Deklarasi
String
Deklarasi
string
sama
seper6
deklarasi
array
of
character.
Bentuk
penulisan
perintah
:
char nama_variabel[panjang_karakter];
Contoh
:
char
name[50];
(deklarasi
string
dengan
panjang
50
karakter).
Inisialisasi
String
Untuk
memberikan
nilai
pada
string
yang
telah
dideklarasikan
caranya
adalah
menggunakan
tanda
pe6k
ganda
(double
quote)
pada
nilai
yang
ingin
disimpan.
Contoh
:
nama = ahmad;
Deklarasi
sekaligus
inisialisasi
dapat
dilakukan
pada
string.
Contoh
:
char nama[15] = ahmad;
Pengaksesan
String
Untuk
menuliskan/mengakses
variabel
string,
digunakan
perintah
:
%s
atau
puts().
Contoh
:
puts(nama);
Atau
printf(%s, nama);
Contoh :
Array
of
string
String
array
of
char
Array
of
String
array
of
array
of
char
array
of
char
2
dimensi
Contoh
:
Fungsi
String
Fungsi-fungsi
manipulasi
string
terdapat
di
le
string.h.
Adapun
perintah
atau
fungsi
yang
ada
pada
string
tersebut
antara
lain
:
Strcpy
Strcat
Strcmp
Strlen
-
Strncpy
-
Strncat
-
Strncmp
strcpy()
Digunakan
untuk
:
Menyalin
Nilai
String.
Bentuk
:
strcpy(string_tujuan,
string_asal);
Contoh
program
:
#include<stdio.h>
#include<string.h>
main(){
char
string1[]="informa6ka";
char
string2[20]="teknik";
puts("sebelum
copy");
prin_("String
1
:
%s\n",
string1);
prin_("String
2
:
%s\n\n",
string2);
strcpy(string1,string2);
puts("setelah
copy");
prin_("String
1
:
%s\n",
string1);
prin_("String
2
:
%s\n",
string2);
}
strncpy()
Digunakan
untuk
:
Menyalin
Nilai
String
sebanyak
n
karakter
sesuai
yang
diinginkan
programmer
Bentuk
:
strncpy(string_tujuan,
string_asal,n);
Contoh
program
:
#include<stdio.h>
#include<string.h>
main(){
char
string1[]="informa6ka";
char
string2[20]="teknik";
puts("sebelum
copy");
prin_("String
1
:
%s\n",
string1);
prin_("String
2
:
%s\n\n",
string2);
strncpy(string2,string1,3);
puts("setelah
copy");
prin_("String
1
:
%s\n",
string1);
prin_("String
2
:
%s\n",
string2);
}
strcat()
Digunakan
untuk
:
Menggabungkan
String.
Bentuk
:
strcat(string1,string2);
String
1
tujuan
,
string2
sumber
Contoh program :
#include<stdio.h>
#include<string.h>
void
main(){
char
string1[]="informa6ka";
char
string2[20]="teknik";
puts("
sebelum
digabungkan
");
prin_("String
1
:
%s\n",
string1);
prin_("String
2
:
%s\n\n",
string2);
strcat(string1,string2);
puts("setelah
digabungkan
");
prin_("String
1
:
%s\n",
string1);
prin_("String
2
:
%s\n",
string2);
}
10
strncat()
Digunakan
untuk
:
Menggabungkan
String
dimana
Fungsi
ini
dapat
memindahkan
karakter
sebanyak
n
karakter
sesuai
yang
sudah
diprogram
oleh
programmer
Bentuk
:
strcat(string1,string2,n);
String
1
tujuan
,
string2
sumber
Contoh program :
#include<stdio.h>
#include<string.h>
void
main(){
char
string1[]="informa6ka";
char
string2[20]="teknik";
puts("sebelum
digabungkan");
prin_("String
1
:
%s\n",
string1);
prin_("String
2
:
%s\n\n",
string2);
strncat(string1,string2,2);
puts("setelah
digabungkan
");
prin_("String
1
:
%s\n",
string1);
prin_("String
2
:
%s\n",
string2);
}
11
strcmp()
Digunakan
untuk
:Membandingkan
String.
Bentuk
:
strcmp(string1,string2);
Jika
nilai
yang
dikembalikan
0
berar6
string
sama,
jika
nilai
>0
string
1
lebih
besar
dari
string
2,
jika
<0
string
1
lebih
kecil
dari
0.
Contoh
:
#include<stdio.h>
#include<string.h>
main(){
char
string1[]="a";
char
string2[]="a";
int
hasil;
hasil
=
strcmp(string1,string2);
prin_("hasil
=
%d\n",
hasil);
}
12
strncmp()
Digunakan
untuk
:
membandingkan
n
karakter
pertama
dalam
dua
buah
string
Bentuk
:
strcmp(string1,string2,
n);
Jika
nilai
yang
dikembalikan
0
berar6
string
yang
dibandingkan
sama,
jika
nilai
>0
string
1
lebih
besar
dari
string
2,
jika
<0
string
1
lebih
kecil
dari
0.
#include<stdio.h>
Contoh
:
#include<string.h>
main(){
char
string1[]="andi";
char
string2[]="anto";
int
hasil;
hasil
=
strncmp(string1,string2,2);
prin_("hasil
=
%d\n",
hasil);
}
13
strlen()
Digunakan
untuk
mencari
panjang
string.
Bentuk
:
strlen(nama_variabel_string);
Contoh
program
:
#include<stdio.h>
#include<string.h>
main(){
char
nama[20];
prin_("masukkan
nama
:");
gets(nama);
prin_("panjang
string
:
%d",
strlen(nama));
}
14
Palindrom
Palindrome
adalah
suatu
kata
atau
kalimat
yang
jika
dibaca
dari
depan
maupun
dari
belakang
memberikan
hasil
yang
sama.
Misalnya
kata
tamat,
kakak,
malam,
dan
lain-
lain.
Dalam
bentuk
kalimat
salah
satu
contoh
yang
bisa
diberikan
adalah
kasur
ini
rusak
Contoh
Program
#include
<stdio.h>
#include
<string.h>
main(){
char
inputan[80];
int
i,j,hasil=0,fungsi_len;
puts("Masukan
string
:");
gets(inputan);
fungsi_len=strlen(inputan);
for(i=0,j=fungsi_len-1;i<=(fungsi_len/2);++i,--j){
if(inputan[i]==inputan[j])
hasil=1;
}
if(hasil){
prin_("String
termasuk
Palindrome");
}else{
prin_("String
bukan
palindrom");
}
}
Operasi Karakter
( library ctype.h )
v Isspace
Merupakan fungsi operasi karakter yang menangani inputan keyboard
berupa karakter spasi,backspace dan enter.
v Isalpha
Merupakan fungsi operasi karakter yang menangani inputan keyboard
berupa karakter karakter khusus huruf.
v Islower
Merupakan fungsi operasi karakter dengan tolok ukur syntax ini bernilai
benar (bukan nol) jika karakter merupakan huruf kecil.
Bentuk umumnya: islower(char);
v Isupper
Merupakan fungsi operasi karakter dengan tolok ukur fungsi ini akan
menghasilkan nilai benar (bukan nol) jika karakter merupakan huruf capital.
Operasi Karakter
( library ctype.h )
#include<stdio.h>
#include<ctype.h>
#include<conio.h>
main(){
int karakter;
printf("Masukan sembarang karakter : \n");
do{
karakter=getch();
if(isspace(karakter)){
break;
}
if(isalpha(karakter)){
if(islower(karakter)){
printf("%c huruf kecil \n",karakter);
}else if(isupper(karakter)){
printf("%c huruf besar \n",karakter);
}
}else{
putchar(7);
}
}while(1);
}
Operasi Karakter
( library ctype.h )
v Toupper()
Fungsi ini akan merubah huruf kecil menjadi huruf kapital.
Bentuk umum: toupper(char);
v Tolower()
Fungsi ini akan merubah huruf kapital menjadi huruf kecil.
Bentuk umum: tolower(char);
Contoh :
#include<stdio.h>
#include<ctype.h>
#include<conio.h>
main(){
char tes;
printf("masukan Y / N : ");
tes=getche();
if(toupper(tes)=='Y'||toupper(tes)=='N'){
printf("\nanda memasukan karakter yang benar");
}else{
printf("\nanda memasukan karakter yang salah");
}
}
Exercise
1. Buatlah
program
yang
akan
menerima
inputan
satu
buah
string
dan
menuliskan
panjang
string
tsb
ke
layar.
2. Buatlah
program
yang
akan
menerima
inputan
2
buah
string
dan
menggabungkan
kedua
string
tsb.
Tampilkan
hasil
penggabungannya
ke
layar.
3. Buatlah
program
yang
akan
menerima
2
buah
string
dan
menentukan
urutan
kedua
string
tsb.
20
21