Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Chương trình C thay thế tất cả ký tự trong chuỗi


Nhập chuỗi tại runtime, đọc ký tự cần thay thế, sau đó đọc ký tự mới sẽ thay thế tất cả lần xuất hiện của ký tự cũ trong chuỗi.

Chương trình 1: Thay thế tất cả lần xuất hiện

#include <stdio.h>
#include <string.h>

int main() {
    char string[100], ch1, ch2;
    int i;
    
    printf("Nhập chuỗi: ");
    gets(string);
    printf("Nhập ký tự cần tìm: ");
    scanf("%c", &ch1);
    getchar();  // Xóa ký tự newline còn lại
    printf("Nhập ký tự thay thế: ");
    scanf("%c", &ch2);
    
    for(i = 0; i <= strlen(string); i++) {
        if(string[i] == ch1) {
            string[i] = ch2;
        }
    }
    
    printf("\nChuỗi sau khi thay '%c' bằng '%c' = %s\n", ch1, ch2, string);
    return 0;
}

Kết quả chạy chương trình 1

Nhập chuỗi: Tutorials Point
Nhập ký tự cần tìm: i
Nhập ký tự thay thế: %
Chuỗi sau khi thay 'i' bằng '%' = Tutor%als Po%nt

Nhập chuỗi: c programming
Nhập ký tự cần tìm: m
Nhập ký tự thay thế: $
Chuỗi sau khi thay 'm' bằng '$' = c progra$$ing

Chương trình 2: Thay thế chỉ lần xuất hiện đầu tiên

#include <stdio.h>
#include <string.h>

int main() {
    char string[100], ch1, ch2;
    int i;
    
    printf("Nhập chuỗi: ");
    gets(string);
    printf("Nhập ký tự cần tìm: ");
    scanf("%c", &ch1);
    getchar();
    printf("Nhập ký tự thay thế: ");
    scanf("%c", &ch2);
    
    for(i = 0; string[i] != '\0'; i++) {
        if(string[i] == ch1) {
            string[i] = ch2;
            break;  // Thoát sau khi thay lần đầu
        }
    }
    
    printf("\nChuỗi sau khi thay '%c' bằng '%c' = %s\n", ch1, ch2, string);
    return 0;
}

Kết quả chạy chương trình 2

Chạy 1:
Nhập chuỗi: Tutorial Point
Nhập ký tự cần tìm: o
Nhập ký tự thay thế: #
Chuỗi sau khi thay 'o' bằng '#' = Tut#rial Point

Chạy 2:
Nhập chuỗi: c programming
Nhập ký tự cần tìm: g
Nhập ký tự thay thế: @
Chuỗi sau khi thay 'g' bằng '@' = c pro@ramming