Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

C โปรแกรมตรวจสอบสองสายว่าเหมือนกันหรือไม่


ให้สองสตริง str1 และ str2 เราต้องตรวจสอบว่าทั้งสองสตริงเหมือนกันหรือไม่ เช่นเดียวกับที่เราได้รับสองเหล็กใน "สวัสดี" และ "สวัสดี" ดังนั้นมันจึงเหมือนกันและเหมือนกัน

เหมือนกันคือสตริงที่ดูเหมือนเท่ากันแต่ไม่เท่ากันเช่น:“สวัสดี” และ “สวัสดี” และสตริงที่เหมือนกันทุกประการเช่น:“โลก” และ “โลก”

ตัวอย่าง

Input: str1[] = {“Hello”}, str2[] = {“Hello”}
Output: Yes 2 strings are same
Input: str1[] = {“world”}, str2[] = {“World”}
Output: No, 2 strings are not same

แนวทางที่ใช้ด้านล่างมีดังนี้

เราสามารถใช้ strcmp(string2, string1).

ฟังก์ชันเปรียบเทียบสตริง strcmp () เป็นฟังก์ชันในไฟล์ส่วนหัว "string.h" ฟังก์ชันนี้ยอมรับพารามิเตอร์สองตัว ทั้งสองสตริง ฟังก์ชันนี้เปรียบเทียบสตริงทั้งสองและตรวจสอบว่าสตริงทั้งสองเหมือนกันหรือไม่ และคืนค่า 0 หากไม่มีการเปลี่ยนแปลงในสตริง และส่งคืนค่าที่ไม่ใช่ศูนย์เมื่อสตริงทั้งสองไม่เหมือนกัน ฟังก์ชันนี้คำนึงถึงขนาดตัวพิมพ์ หมายความว่าทั้งสองสตริงควรเหมือนกันทุกประการ

  • ดังนั้น เราจะใช้สองสตริงเป็นอินพุต
  • ใช้ strcmp() และส่งผ่านทั้งสองสตริงเป็นพารามิเตอร์
  • ถ้าคืนค่าศูนย์ ให้พิมพ์ว่า "ใช่ 2 สตริงเหมือนกัน"
  • อย่างอื่นพิมพ์ “ไม่ 2 สตริงไม่เหมือนกัน”

อัลกอริทึม

Start
In function int main(int argc, char const *argv[])
   Step 1-> Declare and initialize 2 strings string1[] and string2[]
   Step 2-> If strcmp(string1, string2) == 0 then,
      Print "Yes 2 strings are same\n"
   Step 3-> else
      Print "No, 2 strings are not same\n"
Stop

ตัวอย่าง

#include <stdio.h>
#include <string.h>
int main(int argc, char const *argv[]) {
   char string1[] = {"tutorials point"};
   char string2[] = {"tutorials point"};
   //using function strcmp() to compare the two strings
   if (strcmp(string1, string2) == 0)
      printf("Yes 2 strings are same\n");
   else
      printf("No, 2 strings are not same\n" );
      return 0;
}

ผลลัพธ์

หากรันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้ -

Yes 2 strings are same