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

Chương trình C xóa tất cả khoảng trắng trong câu dùng chuỗi


Vấn đề

Xóa tất cả khoảng trắng từ chuỗi nhập runtime bằng while loop, kiểm tra khoảng trắng mỗi chỉ số.

Giải pháp

Ví dụ: "Tutorials Point C Programming" -> "TutorialsPointCProgramming".

Khai báo chuỗi: char stringname[size];

Khởi tạo

  • Hằng ký tự đơn.
char string[10] = {'H','e','l','l','o','\0'}
  • Hằng chuỗi.
char string[10] = "Hello";

Truy cập

Dùng "%s" truy cập đến '\0'.

Logic xóa khoảng trắng:

while(string[i] != '\0'){ 
    check = 0; 
    if(string[i] == ' '){ 
        j = i; 
        while(string[j-1] != '\0'){ 
            string[j] = string[j+1]; 
            j++; 
        } 
        check = 1; 
    } 
    if(check == 0) i++; 
}

Ví dụ

Chương trình C xóa tất cả khoảng trắng:

#include <stdio.h> 
int main(){ 
    char string[50]; 
    int i = 0, j, check; 
    printf("Nhap cau: "); 
    gets(string); 
    while(string[i] != '\0'){ 
        check = 0; 
        if(string[i] == ' '){ 
            j = i; 
            while(string[j-1] != '\0'){ 
                string[j] = string[j+1]; 
                j++; 
            } 
            check = 1; 
        } 
        if(check == 0) i++; 
    } 
    printf("\nCau khong khoang trang: %s", string); 
    getch(); 
    return 0; 
}

Đầu ra

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

Lan 1: Nhap: Tutorials Point C Programming 
Ket qua: TutorialsPointCProgramming 
Lan 2: Nhap: Welcome to the world of tutorials 
Ket qua: Welcometotheworldoftutorials