Viết chương trình tìm kiếm vị trí tên của một người trong mỗi danh sách sau đây: a. Danh sách học sinh của lớp em. b. Danh sách tên của các chủ tài khoản ngân hàng (kí tự không dấu) và đã sắp

Viết chương trình tìm kiếm vị trí tên của một người trong mỗi danh sách sau đây:

a. Danh sách học sinh của lớp em.

b. Danh sách tên của các chủ tài khoản ngân hàng (kí tự không dấu) và đã sắp thứ tự theo bảng chữ cái.

Trả lời

a) Gợi ý

Gán i = 0

Gán j = 0

Nếu A[j] > A[j + 1] thì đối chỗ A[j] và A[j + 1]

Nếu j < n – i – 1:

Đúng thì j = j + 1 và quay lại bước 3

Sai thì sang bước 5

Nếu i < n – 1:

Đúng thì i = i + 1 và quay lại bước 2

Sai thì dừng lại

b) Gợi ý:

#include<stdio.h>

#include<string.h>

int main() {

   char s[4][20];

   char t[20];

   int i, j;

   int size = 4;

   printf("\nNhap 4 chuoi bat ky: \n");

   for (i = 0; i < size; i++) {

      scanf("%s", s[i]);

   }

   // sap xep chuoi

   for (i = 1; i < size; i++) {

      for (j = 1; j < size; j++) {

         if (strcmp(s[j - 1], s[j]) > 0) {

            strcpy(t, s[j - 1]);

            strcpy(s[j - 1], s[j]);

            strcpy(s[j], t);

         }

      }

   }

   printf("\nSap xep thu tu cua cac chuoi:");

   for (i = 0; i < size; i++) {

      printf("\n%s", s[i]);

   }

   return(0);

}

Câu hỏi cùng chủ đề

Xem tất cả