Trong C không tồn tại hàm nào giúp chúng ta trực tiếp tiến hành đảo ngược chuỗi cả. Tuy nhiên bằng cách sử dụng kết hợp các hàm với nhau, chúng ta có thể thực hiện được việc này.
Đảo ngược ký tự trong chuỗi C
Bằng cách sử dụng vòng lặp while để lấy ra từng ký tự và so sánh chúng với nhau, chúng ta có thể tiến hành đảo ngược thứ tự các từ trong chuỗi C theo thứ tự trong bảng chữ cái.
Để so sánh các ký tự với nhau, chúng ta có thể sử dụng tới toán tử so sánh, hoặc là hàm strcmp[] chẳng hạn.
- Xem thêm: So sánh chuỗi trong C [strcmp, strncmp]
Và chúng ta sẽ sử dụng vòng lặp while để tiến hành đảo ngược ký tự trong chuỗi C như sau:
Copy#include
/* Tạo hàm đảo ngược chuỗi trong C*/
void str_reverse[char str[]] {
int lo = 0;
int length;
for [length = 0; str[length] != '\0' ; length++] {}
while [ lo < length ] {
--length;
char tmp = str[lo];
str[lo] = str[length];
str[length] = tmp;
++lo;
}
}
int main[] {
char str[100];
/* Nhập chuỗi cần đảo ngược từ bàn phím*/
printf["Nhap chuoi: "];
scanf["%s", str];
/* Gọi hàm đảo ngược chuỗi*/
str_reverse[str];
/* In kết quả*/
printf["Chuoi viet nguoc: %s", str];
return 0;
}
Khi chạy chương trình, kết quả hiện ra như sau:
CopyNhap chuoi: abc123xyz
Chuoi viet nguoc: zyx321cba
Tổng kết
Trên đây Kiyoshi đã hướng dẫn bạn cách đảo ngược chuỗi trong C rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.
Và hãy cùng tìm hiểu những kiến thức sâu hơn về C trong các bài học tiếp theo.
URL Link
//laptrinhcanban.com/c/lap-trinh-c-co-ban/chuoi-string-trong-c/dao-nguoc-chuoi-trong-c/
Viết bởi Kiyoshi. Đã đăng ký bản quyền tác giả tại Creativecommons và DMCA
Bài viết liên quan
Cắt chuỗi trong C
Căn lề trong C
Chèn chuỗi trong C
Chuyển chuỗi thành số trong C [atoi,atof,atol]
Chuyển số thành chuỗi trong C [sprintf, itoa]
Chuyển chữ hoa sang chữ thường và ngược lại trong C
Con trỏ chuỗi trong c
Copy chuỗi trong C [strcpy, strcpy_s, strncpy]
Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!
HOME › lập trình c cơ bản dành cho người mới học lập trình>>12. chuỗi string trong c
Bài sauSắp xếp chuỗi trong C
Bài tiếpChuyển số thành chuỗi trong C [sprintf, itoa]
- Bài viết mới nhất
Tách chuỗi trong PHP [explode, preg_split] tháng 9 17, 2022
Cắt chuỗi trong PHP [substr, mb_substr] tháng 9 17, 2022
Tách chuỗi thành mảng trong PHP [explode] tháng 9 17, 2022
Tìm kiếm chuỗi trong PHP [strpos] tháng 9 17, 2022
Đếm số lần xuất hiện của ký tự và chuỗi trong chuỗi PHP [substr_count] tháng 9 17, 2022
Tách từng ký tự trong chuỗi PHP [substr, preg_split] tháng 9 17, 2022
Chuyển chuỗi thành mảng trong PHP [str_split, mb_str_split] tháng 9 17, 2022
Xóa ký tự trong chuỗi PHP tháng 9 15, 2022
Profile
Tác giả : Kiyoshi [Chis Thanh]
Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.
Để thu được một chuỗi đảo ngược của chuỗi ban đầu, bạn cần khai báo thêm một chuỗi đích có kích cỡ bằng kích cỡ với chuỗi ban đầu. Sử dụng vòng lặp để duyệt qua từng ký tự của chuỗi ban đầu rồi sau đó gán giá trị ký tự đó cho chuỗi đích. Kiểm tra khi nào gặp giá trị null [ký tự '\0'] thì kết thúc vòng lặp.