Chuyển chữ thường thành chữ hoa trong C / C++
Trong bài viết này, codehow sẽ hướng dẫn các bạn cách chuyển chữ thường thành chữ hoa trong C / C++. Ở bài viết trước mình có hướng dẫn cách chuyển chữ hoa thành chữ thường trong C/ C++, các bạn có thể xem lại nhé.
Để chuyển chữ hoa thành chữ thường, ta lấy giá trị mã ASCII của ký tự đó cộng thêm 32. Như vậy, để chuyển chữ thường thành chữ hoa, ta sẽ lấy giá trị ASCII trừ đi 32.
Ví dụ: Ký tự 'a' có giá trị ASCII là 97, vậy ký tự 'A' = 'a' - 32 = 97 - 32 = 65.
Vậy làm thế nào để chuyển chữ thường thành chữ hoa trong C / C++, hãy bắt đầu cùng mình ngay bây giờ thôi nhé.
Chuyển chữ thường thành chữ hoa trong C / C++
Trong chương trình này, mình sẽ thực hiện chương trình chuyển chữ thường thành chữ hoa trong C / C++.
Đầu tiên cần khai báo một chuỗi str, ở đây mình gán độ dài là 25. Sau đó yêu cầu người dùng nhập vào một chuỗi.
char str[25]; printf("Nhập vào một chuỗi: "); scanf("%s", &str);
Sử dụng vòng lặp for lặp từ 0 đến độ dài của chuỗi. Nếu ký tự nào nằm trong khoảng từ 97 - 122 (là chữ thường) thì trừ đi 32 (thành chữ hoa).
for(i=0;i<=strlen(str);i++){ if(str[i]>=97&&str[i]<=122) str[i]=str[i]-32; }
Sau đó in chuỗi ra màn hình.
Dưới đây là hai chương trình hoàn chỉnh mình đã viết bằng ngôn ngữ C và C++, các bạn có thể tham khảo nhé !!!
Chương trình C:
#include <stdio.h> int main(void) { char str[25]; int i; printf("Nhập vào một chuỗi: "); scanf("%s", &str); for(i=0;i<=strlen(str);i++){ if(str[i]>=97&&str[i]<=122) str[i]=str[i]-32; } printf("Chuỗi sau khi được chuyển hoa chữ thường là: %s ",str); printf("\n------------------------------\n"); printf("Chương trình này được đăng tại codehow.net"); }
Kết quả:
Chương trình C++:
#include <iostream> #include<string.h> using namespace std; int main(){ char str[25]; int i; cout<<"Nhập vào một chuỗi: "; cin>>str; for(i=0;i<=strlen(str);i++){ if(str[i]>=97&&str[i]<=122) str[i]=str[i]-32; } cout<<"Chuỗi sau khi được chuyển thành chữ hoa là "<<str; cout<<"\n------------------------------\n"; cout<<"Chương trình này được đăng tại codehow.net"; }
Kết quả:
Chuyển chữ thường thành chữ hoa trong C / C++ bằng hàm toupper()
Như các bạn đã thấy thì cách chuyển chữ thường thành chữ hoa trong C / C++ ở chương trình 1 rất dài dòng và khó hiểu đúng không ạ.
Biết được điều đó, trong ngôn ngữ C và C++ đã tạo ra một hàm để làm việc này, đó là hàm toupper()
. Vậy làm thể nào để sử dụng nó trong việc chuyển chữ thường thành chữ hoa trong C / C++, các bạn hãy xem ví dụ dưới đây nhé.
Chương trình C:
#include <stdio.h> int main(void) { char str[25]; int i; printf("Nhập vào một chuỗi: "); scanf("%s", &str); printf("Chuỗi sau khi được chuyển thành chữ hoa là: "); for(i=0;i<=strlen(str);i++){ putchar(toupper(str[i])); } printf("\n------------------------------\n"); printf("Chương trình này được đăng tại codehow.net"); }
Chương trình C++:
#include <iostream> #include <ctype.h> #include <cstring> using namespace std; int main(){ char str[25]; int i; cout<<"Nhập vào một chuỗi: "; cin>>str; cout<<"Chuỗi sau khi được chuyển thành chữ hoa là: "; for (int i=0; i<=strlen(str); i++) { putchar(toupper(str[i])); } cout<<"\n------------------------------\n"; cout<<"Chương trình này được đăng tại codehow.net"; }
Kết quả:
Như vậy là chúng ta đã cùng nhau tìm hiểu về cách chuyển chữ thường thành chữ hoa trong C / C++. Các bạn có thể luyện tập nhiều dạng bài tập khác nhau tại serries bài tập C / C++ của codehow nhé. Cảm ơn các bạn rất nhiều !!!