Anda di halaman 1dari 7

Ni’matul Ngalim Qussaniyah

191910201066
Algoritma dan Pemrograman Kelas B

Tugas String

1. A. Scanf()
#include <stdio.h>

main()
{
char kar[5];

printf("Masukkan karakter : ");


scanf("%s", kar);

printf("%s \n", kar);


}

Analisis dan Kesimpulan :


Pada tampilan percobaan scanf() diatas jika kita menginputkan 3 kata yaitu
‘Selamat Berbuka Puasa’ maka yang akan muncul adalah 1 kata yang paling
depan yaitu ‘Selamat’. Dengan menggunakan perintah scanf, kita bisa membuat
program yang lebih interaktif, yakni meminta data dari user / pengguna. Data ini
nantinya bisa disimpan ke dalam variabel dan diolah lebih lanjut untuk kemudian
ditampilkan kembali.

B. Gets()
#include <stdio.h>

main()
{
char kar[5];
printf("Masukkan karakter : ");
gets(kar);

printf("%s \n", kar);


}

Analisis dan Kesimpulan :


Pada tampilan percobaan gets() diatas dapat kita lihat bahwa jika kita
menginputkan 3 kata yaitu ‘Selamat Berbuka Puasa’ maka yang akan muncul
sebagai keluarannya yaitu semua kata yang telah kita inputkan tersebut. Hal ini
terjadi karena fungsi gets() akan membaca seluruh karakter yang diketik melalui
keyboard sampai tombol ENTER ditekan dengan tanpa mengecek batasan
panjang array yang merupakan argumennya.

C. Fgets()
#include <stdio.h>

main()
{
char kar[5];

printf("Masukkan karakter : ");


fgets(kar, sizeof kar, stdin);

printf("%s \n", kar);


}
Analisis dan Kesimpulan :
Pada tampilan percobaan fgets() diatas dapat kita lihat bahwa jika kita
menginputkan 3 kata yaitu ‘Selamat Berbuka Puasa’ maka argumen yang terbaca
4 huruf paling depan yaitu ‘Sela’. Hal ini terjadi karena fgets() digunakan untuk
membaca string dari file sampai ditemukannya karakter baris baru '\n' atau setelah
(n-1) karakter, dengan n adalah panjang maks string yang dibaca.

2. #include<stdio.h>
#define MAKS 256
main()
{
int i, jumlahkarakter = 0;
char teks [MAKS];

puts("Masukkan suatu kalimat : ");


fgets(teks, sizeof teks, stdin);
for(i=0; teks[i]!='\0';i++)
jumlahkarakter++;
printf("\n\nJumlah karakter = %d\n",
jumlahkarakter);
}
3. #include<iostream>
#include<string.h>
using namespace std;
int main()
{
char kalimat[100];
cout<<"Masukan Kalimat : ";
cin.getline (kalimat , sizeof (kalimat) );
int x = strlen(kalimat);
for(int i=x-1;i>=0;i--)
{
cout<<kalimat[i];
}
}

4. #include<iostream>
#include<string.h>
#define MAKS 80
main()
{
char str1 [MAKS];
char str2 [] = "Selamat Berbuka Puasa";

strcpy(str1, str2); //menyalin isi str2 ke str1


printf("String pertama adalah : %s\n", str1);
printf("String kedua adalah : %s\n", str2);
}
5. A. Dari nomor 2
#include<stdio.h>
#define MAKS 256
main()
{
int i, jumlahkarakter = 0;
char teks [MAKS];

puts("Masukkan suatu kalimat : ");


fgets(teks, sizeof teks, stdin);
for(i=0; teks[i]!='\0';i++)
jumlahkarakter++;
printf("\n\nJumlah karakter = %d\n",
jumlahkarakter);
}

B. Dari nomor 3
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
char kalimat[100];
cout<<"Masukan Kalimat : ";
cin.getline (kalimat , sizeof (kalimat) );
int x = strlen(kalimat);
for(int i=x-1;i>=0;i--)
{
cout<<kalimat[i];
}
}
C. Dari nomor 4
#include<iostream>
#include<string.h>
#define MAKS 80
main()
{
char str1 [MAKS];
char str2 [] = "Selamat Berbuka Puasa";

strcpy(str1, str2); //menyalin isi str2 ke str1


printf("String pertama adalah : %s\n", str1);
printf("String kedua adalah : %s\n", str2);
}

6. A. Strcmp()
#include<stdio.h>
#include<string.h>
main()
{
char str1[]="PUASA";
char str2[]="Puasa";
char str3[]="PUASA";

printf("Hasil pembanding %s dengan %s --> %d\n",


str1, str2, strcmp(str1, str2));
printf("Hasil pembanding %s dengan %s --> %d\n",
str2, str1, strcmp(str2, str1));
printf("Hasil pembanding %s dengan %s --> %d\n",
str1, str3, strcmp(str1, str3));
}
B. Strcmpi()
#include<stdio.h>
#include<string.h>
main()
{
char str1[]="PUASA";
char str2[]="Ramadhan";
char str3[]="Puasa";

printf("Hasil pembanding %s dengan %s --> %d\n",


str1, str2, strcmpi(str1, str2));
printf("Hasil pembanding %s dengan %s --> %d\n",
str2, str1, strcmpi(str2, str1));
printf("Hasil pembanding %s dengan %s --> %d\n",
str1, str3, strcmpi(str1, str3));
}

Pada percobaan diatas dilakukan menggunakan fungsi strcmp() dan strcmpi().


Pada percobaan strcmp() ini membandingkan dua buah string secara case
sensitive sedangkan pada percobaan strcmpi() membandingkan dua buah string
secara non case sensitive. Pada dasarnya fungsi strcmp() dan strcmpi() ini
memiliki cara kerja yang hampir sama, hanya saja pada fungsi strcmp()
menggunakan satu kata dan pada strcmpi() menggunakan 2 kata.

Anda mungkin juga menyukai