Đếm số lần xuất hiện của ký tự trong chuỗi C | Lập Trình Từ Đầu

1. Bài tập đếm số lần xuất hiện của ký tự trong chuỗi bằng ngôn ngữ lập trình C

Bài tập này chúng ta sẽ sử dụng các kiến thức từ ngôn ngữ lập trình C như: cách nhập xuất chuỗi cơ bản trong ngôn ngữ lập trình C và dùng vòng lặp for để duyệt các ký tự trong chuỗi trong ngôn ngữ lập trinh C.

Yêu cầu của bài tập đưa ra cho chúng ta là đếm số lần xuất hiện của ký tự trong chuỗi bằng ngôn ngữ lập trình C.

2. Lời giải

Để thực hiện bài toán này chúng ta cần có kiến thức cơ bản về ngôn ngữ lập trình C, các cách nhập xuất chuỗi cơ bản trong C và dùng vòng lặp for để duyệt các ký tự trong chuỗi trong ngôn ngữ lập trình C.

Các bước thực hiện yêu cầu của bài tập đảo ngược chuỗi bằng ngôn ngữ lập trình C như sau:

Bước 1: Trong hàm main khai báo biến char a[100] biến chứa ký thự ta sẽ nhập vào (tối đa 100 ký tự).

Bước 2: Nhập dữ liệu từ bàn phím gán vào biến a rồi in biến a ra màn hình.

Bước 3: Khai báo biến char x là ký tự muốn tìm và nhập dữ liệu từ bàn phím gán vào biến x, khai báo biến int dem = 0 dùng để đếm số lượng ký tự xuất hiện trong chuỗi.

Bước 4: Sau đó sử dụng vòng lặp for bắt đầu từ int i = 0, kết thúc khi i < strlen(a) và mỗi lần i tăng lên 1; trong vòng lặp ta dùng if với điều kiện a[i]==x nếu thỏa mãn ta tăng biến dem lên 1. Kết thúc lặp ta dùng if với điều kiện dem>0 thì x có trong chuỗi với số lần là dem, ngược lại x không có trong chuỗi.

Bước 5: Chạy chương trình.

Chương trình giải bài tập đếm số lần xuất hiện của ký tự trong chuỗi bằng ngôn ngữ lập trình C như sau:

#include <stdio.h> 
#include <string.h> 
int main(){ 
    char a[100];// khai bao chuoi a có toi da 100 ky tu
    printf("Nhap vao chuoi ky tu: "); 
    gets(a);
    char x;//khai bao ky tu muon tim
    printf("Nhap vao ky tu muon tim:"); 
    scanf("%c",&x);
    int dem=0;//khai bao bien dem
    for(int i=0; i<strlen(a); i++){
        if(a[i]==x){//neu a[i] = x thi tang bien dem len 1
            dem++;
        }
    }
    if(dem>0){
        printf("So lan xuat hien cua ky tu %c trong chuoi la: %d",x, dem);
    }else{
        printf("Ky tu %c khong co trong chuoi!",x);
    }
}

Ví dụ tôi nhập chuỗi: laptrinhtudau và ký tự muốn tìm là a.

Kết quả:

Nhap vao chuoi ky tu: laptrinhtudau
Nhap vao ky tu muon tim:a
So lan xuat hien cua ky tu a trong chuoi la: 2

3. Tổng kết

Sau khi làm bài tập này các bạn cần phải hiểu và nắm được những kiến thức sau:

  • Cách nhập xuất chuỗi cơ bản trong ngôn ngữ lập trình C.
  • Cách sử dụng hàm strlen() trong C.
  • Cách sử dụng vòng lặp để duyệt qua các phần tử của chuỗi.
  • Cách đếm số lần xuất hiện của ký tự trong chuỗi C.