Đảo ngược chuỗi sử dụng đệ quy trong C++

Trong bài tập này chúng ta sẽ thực hiện chương trình đảo ngược chuỗi sử dụng đệ quy trong C++. Đây là một dạng bài tập thường gặp khi bắt đầu làm quen với String trong C++.

test php

banquyen png

Bài viết này được đăng tại

freetuts.net

, không được copy dưới mọi hình thức.

Ở các bài tập đơn giản như vậy các bạn hãy tập viết hàm để giải bài toán, như vậy sẽ giúp các bạn tư duy được khi giải quyết các vấn đề.

Ví dụ: Chương trình đảo ngược chuỗi sử dụng đệ quy.

Ở ví dụ dưới đây chúng ta sẽ tạo một hàm reverse_string() để thực hiện công việc đảo ngược chuỗi.

#include <iostream>
#include <string.h>
using namespace std;
void reverse_string(char*, int, int);
int main()
{
  char string_array[150];
    cout<<"Nhập vào một chuỗi: ";
    cin>>string_array;
    reverse_string(string_array, 0, strlen(string_array)-1);
    cout<<"Chuỗi sau khi đảo ngược là: "<<string_array;
   cout<<"\n-------------------------------\n";
   cout<<"Chương trình này được đăng tại Freetuts.net";
}
void reverse_string(char *x, int start, int end)
{
    char ch;
    if (start >= end)
       return;
    ch = *(x+start);
    *(x+start) = *(x+end);
    *(x+end) = ch;
    reverse_string(x, ++start, --end);
}

Sau đó ở hàm main() chúng ta khai báo một mảng string_array[] để chứa các phần tử của mảng, rồi sử dụng câu lệnh cout, cin để yêu cầu người dùng nhập vào chuỗi.

Bài viết này được đăng tại [free tuts .net]

Cuối cùng sử dụng hàm reverse_string() đã viết để đảo ngược chuỗi người dùng vừa nhập và hiển thị kết quả ra màn hình.

Kết quả:

dao nguoc chuoi JPG

Như vậy là chúng ta đã thực hiện xong chương trình đảo ngược chuổi. Chúc các bạn thực hiện thành công!!!