Đề bài là: Viết chương trình đổi những ký tự đầu tiên của mỗi từ thành chữ in hoa. Em có search google được cái hàm và chạy như dưới đây thì đúng.
#include<iostream>
#include<string>
using namespace std;
#define MAX 50
void toUp(char*);
int main()
{
char a[MAX];
cout << "Nhap chuoi a" << endl;
cin.getline(a, MAX);
toUp(a);
cout << a << endl;
system("pause");
}
void toUp(char *a)
{
a[0] = toupper(a[0]);
while (strstr(a, " ") != NULL)
{
a = strstr(a, " ") + 1;
a[0] = toupper(a[0]);
}
}
Còn khi như này thì báo lỗi ngay dòng a = strstr(a, " ") + 1;
#include<iostream>
#include<string>
using namespace std;
#define MAX 50
int main()
{
char a[MAX];
cout << "Nhap chuoi a" << endl;
cin.getline(a, MAX);
while (strstr(a, " ") != NULL)
{
a = strstr(a, " ") + 1;
a[0] = toupper(a[0]);
}
cout << a << endl;
system("pause");
}
Các anh giải thích giúp em với, em mới bắt đầu nhập môn C/C++ trên trường thôi, mấy vấn đề liên quan tới con trỏ em chưa nắm chắc lắm.