Viết Chương Trình Đảo Ngược Các Ký Tự Trong Chuỗi

Để luyện tập kiến thức và kỹ năng về chuỗi trong C, hôm nay Lập trình không khó đang thuộc chúng ta đi làm việc bài bác tập đảo ngược chuỗi nhập từ bỏ keyboard vào ngữ điệu C/C++. Chúng ta sẽ với mọi người trong nhà tiến hành đảo ngược chuỗi ko sử dụng hàm cùng hòn đảo ngược chuỗi thực hiện hàm bao gồm sẵn trong những thỏng viện của ngữ điệu C/C++.

Bạn đang xem: Viết chương trình đảo ngược các ký tự trong chuỗi

Input


Đảo ngược chuỗi ko dùng hàm bao gồm sẵn

Nếu chưa biết bí quyết nhập chuỗi các chúng ta có thể xem xét lại cách nhập chuỗi trên trên đây.

Trước tiên các bạn phải đếm coi chuỗi tất cả bao nhiêu kí từ. Với trách nhiệm này thì bản thân sẽ viết riêng rẽ một hàm Length() trả về con số kí từ vào chuỗi. Lưu ý Khi các bạn nhập chuỗi vào sử dụng hàm fgets() thì nó sẽ hiểu cả kí từ " " (xuất xắc kí từ bỏ enter) vào thời điểm cuối chuỗi. Nhiệm vụ của các bạn là không đếm kí từ bỏ này.

Sau Lúc đã có được số lượng kí tự trong chuỗi, bài toán tiếp theo vẫn là đảo ngược chuỗi. Các bạn sẽ sử dụng một nhỏ trỏ giao diện char nhằm giữ gìn chuỗi hòn đảo ngược.

Cuối cùng hàm DaoNguoc đã trả về bé trỏ mà lại chúng ta dùng để làm lưu giữ kí tự.

Xem thêm: Mang Thai 38 Tuần Đã Mổ Được Chưa Có Dấu Hiệu Chuyển Dạ: Những Điều Cần Biết

Nếu các bạn chỉ cần xuất ra thì hoàn toàn có thể dùng 1 vòng for theo hướng ngược trở lại nlỗi hàm InDaoNguoc.

Lời giải tđắm đuối khảo:


0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include
int Length(char s<>)

int i = 0;
while (s != NULL)
++i;
return i - 1;

char *DaoNguoc(char str<>)

int length = Length(str);
char *temp = new char;
for (int i = 0; i length; i++)

temp = str;

temp = NULL; //Kết thúc chuỗi
return temp;

void InDaoNguoc(char str<>)
int length = Length(str);
printf(" Chuoi sau khoản thời gian dao nguoc la: ");
for (int i = length - 1; i >= 0; i--)

printf("%c", str);


int main()

char s<100>;
printf(" Nhap chuoi: ");
fgets(s, 100, stdin); // phải cần sử dụng hàm fgets
/*gets(s);*/
char *kq = DaoNguoc(s);
InDaoNguoc(s);
printf(" Chuoi sau khoản thời gian dao nguoc la: %s", kq);
return 0;

0
1
2
3
4
5
6
7
8
PS G:c_courcesday_58> g++ .Reverse.cpp -o .Reverse
PS G:c_courcesday_58> .Reverse.exe
Nhap chuoi: Nguyen Van Hieu
Chuoi sau khoản thời gian dao nguoc la: ueiH naV neyugN
Chuoi sau thời điểm dao nguoc la: ueiH naV neyugN

Đảo ngược chuỗi thực hiện hàm gồm sẵn

Với ngôn từ lập trình sẵn C

Ngôn ngữ C gồm thư viện string.h, trong đó có hàm strrev() góp chúng ta cũng có thể hòn đảo ngược chuỗi một cách đối chọi giản:


0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include
#include
int main()

char name<30> = "Nguyen Van Hieu";
printf("Truoc lúc dao nguoc : %s ", name);
printf("Sau Khi dao nguoc : %s", strrev(name));
return 0;

Kết quả:


0
1
2
3
4
5
PS G:c_courcesday_57> g++ .StringFuntion.cpp -o .StringFuntion
PS G:c_courcesday_57> .StringFuntion.exe
Truoc Lúc dao nguoc : Nguyen Van Hieu
Sau Lúc dao nguoc : ueiH naV neyugN

Với ngữ điệu C++

Với bài toán áp dụng thư viện string thì chúng ta không nhất thiết phải đếm con số kí từ bỏ nữa rồi! Rất tiện nghi nên ko.

Trước hết thì các bạn khởi tạo một temp(hình trạng string) trống, tiếp đến ta lần lượt thêm từng kí từ vào thời gian cuối temp. Ta đã thực hiện hàm pusk_baông xã nhằm thêm kí trường đoản cú vào thời gian cuối temp. Bây giờ đồng hồ trách nhiệm của họ là mang từng kí trường đoản cú của s theo chiều trường đoản cú sau cho tới cùng chế tạo temp.

Cuối cùng hàm DaoNguoc đã trả về temp, đó là chuỗi đã hòn đảo ngược.


0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include
#include
using namespace std;
string DaoNguoc(string s)
int length = s.length();
string temp;
for (int i = length-1; i >=0; i--)
temp.push_back(s);

return temp;

int main()

string s;
cin.clear();
getline(std::cin, s);
cout "Chuoi sau thời điểm dao nguoc la: ";
cout DaoNguoc(s);
return 0;

0
1
2
3
Hoc lap trinh
Chuoi sau khi dao nguoc la: hnirt pal coH

Hoặc đơn giản rộng không ít nếu thực hiện hàm sau đây:


0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include
#include
using namespace std;
int main()

string str = "Lap trinch khong kho";
// Reverse str
reverse(str.begin(), str.end());
cout str;
return 0;

Kết quả:


0
1
2
ohk gnohk hnirt paL

Bài viết bản thân cho đây cũng xin dứt. Cám ơn chúng ta vẫn theo dõi !

Theo dõi lập trình sẵn ko khó khăn tại:

Các bài viết trong khóa họcBài trước: Bài 57. Các hàm trong tlỗi viện string.hBài sau: Bài 59. Chuyển hình dáng string lịch sự int
TAGS
Facebook
Twitter
Pinterest
WhatsApp
*
*

Giới thiệu website Luyện Code Online


*

Giáo trình Kỹ thuật thiết kế C – Phạm Vnạp năng lượng Ất


*

Tổng đúng theo tài liệu lập trình sẵn C/C++ cho tất cả những người mới


*

Sự không giống nhau thân C và C++ là gì?


Học thiết kế online cùng với mức giá thành ưu đãi


Bảng băm – Hash tables


Subscribe
Connect with
Notify of
new follow-up comments
Label
Name*
Email*
Website
Connect with
Label
Name*
Email*
Website
7 Bình luận
Inline Feedbacks
View all comments
Load More Comments
Khóa học miễn phí

Blog chia sẻ kỹ năng và kiến thức lập trình của Hiếu, xây cất cộng đồng những người học lập trình sẵn. Cho đi kiến thức và kỹ năng mình gồm là cách học tập tác dụng nhất


Báo lỗi / Liên hệ / Hợp tác / Quảng cáo
Blogger
Facebook
Linkedin
Discord
Youtube

BÀI VIẾT HAY


Bài 1. Giới thiệu khóa huấn luyện và đào tạo “Học C Bá Đạo”


1000 bài bác tập xây dựng C/C++ bao gồm giải thuật của thầy Khang


Kiểm tra số nguyên tố áp dụng C/C++ cùng Java


CHUYÊN MỤC HAY


- BẠN BÈ và ĐỐI TÁC -

---

© 2018-20đôi mươi. Bản quyền thuộc Lập Trình Không Khó. Privacy và Terms


7
0
Would love your thoughts, please comment.x
()
x
| Reply
Insert
NHIỀU BÀI VIẾT HƠN

Bảng băm – Hash tables


Bài 19. Vòng lặp while với vì chưng while trong C


Leave a Reply

Your email address will not be published. Required fields are marked *

  • Truyện hentai: bạn sẽ mất bao nhiêu tiền để dùng dịch vụ của hội siêu giàu?

  • Cách pha màu xanh nõn chuối

  • Tạo tài khoản vương giả vinh diệu

  • Những bãi biển "khỏa thân, tắm không mặc quần áo" độc lạ

  • x