Trong hướng dẫn này, chúng ta sẽ học cách tìm ký tự hoa đầu tiên trong chuỗi đã cho. Hãy xem một ví dụ.
Đầu vào −Điểm hướng dẫn
Đầu ra −T
Hãy xem các bước để giải quyết vấn đề bằng phương pháp lặp lại.
-
Khởi tạo chuỗi.
-
Lặp lại chuỗi.
-
Kiểm tra xem ký tự hiện tại có phải là chữ hoa hay không bằng cách sử dụng isupper phương pháp.
-
Nếu ký tự là chữ hoa thì trả về ký tự hiện tại.
Ví dụ
Hãy xem mã.
#include <bits/stdc++.h> using namespace std; char firstUpperCaseChar(string str) { for (int i = 0; i < str.length(); i++) if (isupper(str[i])) { return str[i]; } return 0; } int main() { string str = "Tutorialspoint"; char result = firstUpperCaseChar(str); if (result == 0) { cout << "No uppercase letter" << endl; } else { cout << result << endl; } return 0; }
Đầu ra
Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau.
T
Hãy xem các bước để giải quyết vấn đề bằng phương pháp đệ quy.
-
Khởi tạo chuỗi.
-
Viết một hàm đệ quy chấp nhận hai chuỗi tham số và chỉ mục.
-
Nếu ký tự hiện tại ở cuối chuỗi thì trả về.
-
Nếu ký tự hiện tại là chữ hoa thì trả về ký tự hiện tại.
Ví dụ
Hãy xem mã.
#include <bits/stdc++.h> using namespace std; char firstUpperCaseChar(string str, int i = 0) { if (str[i] == '\0') { return 0; } if (isupper(str[i])) { return str[i]; } return firstUpperCaseChar(str, i + 1); } int main() { string str = "Tutorialspoint"; char result = firstUpperCaseChar(str); if (result == 0) { cout << "No uppercase letter"; } else { cout << result << endl; } return 0; }
Đầu ra
Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau.
T
Kết luận
Nếu bạn có bất kỳ câu hỏi nào trong hướng dẫn, hãy đề cập đến chúng trong phần bình luận.