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

โปรแกรม C เพื่อจัดเรียงชื่อตามลำดับตัวอักษรพร้อมฟังก์ชันสตริง


ปัญหา

จัดเรียงชื่อที่ผู้ใช้ให้ตอนรันไทม์ตามลำดับตัวอักษรโดยใช้เทคนิคการเรียงลำดับแบบฟอง

วิธีแก้ปัญหา

ตรรกะที่ใช้ในการพิมพ์ชื่อตามลำดับตัวอักษรมีดังนี้ -

for (i=1; i < ITEMS; i++){
   for (j=1; j <= ITEMS-i ; j++){
      if (strcmp (string[j-1], string[j]) > 0){ /* Exchange of contents */
         strcpy (dummy, string[j-1]);
         strcpy (string[j-1], string[j]);
         strcpy (string[j], dummy );
      }
   }
}

ตัวอย่าง

ต่อไปนี้เป็นโปรแกรม C เพื่อจัดเรียงชื่อตามลำดับตัวอักษรโดยใช้ฟังก์ชันสตริง -

#define ITEMS 5
#define MAXCHAR 20
main( ){
   char string[ITEMS][MAXCHAR], dummy[MAXCHAR];
   int i = 0, j = 0;
   /* Reading the list */
   printf ("Enter names of %d items \n ",ITEMS);
   while (i < ITEMS)
   scanf ("%s", string[i++]);
   /* Sorting begins */
   for (i=1; i < ITEMS; i++){
      for (j=1; j <= ITEMS-i ; j++){
         if (strcmp (string[j-1], string[j]) > 0){ /* Exchange of contents */
            strcpy (dummy, string[j-1]);
            strcpy (string[j-1], string[j]);
            strcpy (string[j], dummy );
         }
      }
   }
   printf ("\nAlphabetical list \n\n");
   for (i=0; i < ITEMS ; i++)
   printf ("%s\n", string[i]);
}

ผลลัพธ์

เมื่อโปรแกรมข้างต้นทำงาน มันจะสร้างผลลัพธ์ต่อไปนี้ -

Enter names of 5 items
computers
architecture
organization
microprocessor
networking
Alphabetical list
architecture
computers
microprocessor
networking
organization