Cho một chuỗi, tính độ dài bằng hàm tự viết (đệ quy) hoặc hàm có sẵn strlen().
Cách 1: Đệ quy - Duyệt chuỗi cho đến khi gặp '\0', mỗi lần gọi đệ quy trả về 1 + length(con trỏ tiếp theo).
Cách 2: Hàm có sẵn - strlen() trong
Ví dụ
Input: "tutorials point" -> Output: do dai = 15 (14 ký tự + 1 khoảng trắng)
Thuật toán (Đệ quy)
Bắt đầu
Bước 1: Hàm length(char* str)
Nếu *str == '\0' -> trả về 0
Ngược lại -> trả về 1 + length(str + 1)
Bước 2: main()
str = "tutorials point"
Gọi length(str)
Kết thúc
Ví dụ code
#include <bits/stdc++.h>
using namespace std;
int length(char* str) {
if (*str == '\0')
return 0;
else
return 1 + length(str + 1);
}
int main() {
char str[] = "tutorials point";
cout << "Do dai chuoi: " << length(str);
return 0;
}
Kết quả
Do dai chuoi: 15