01/10/2018, 08:39

Cộng ký tự nhập vào bằng getch() vào char khác trong C++

Mọi người ơi, xem giúp em sai chỗ nào ạ… Khi em nhập vào 1 ký tự và in ra thì khôn bị lỗi ký tự, nhưng từ 2 ký tự trở đi thì bị lỗi font. Đề bài bài này là nếu người dùng nhập vào ký tự thường thì khi người dùng nhập vào ký tự thứ hai thì ký trự trước đó tự chuyển về chữ hoa.

 #include <iostream>
#include <conio.h>
#include <stdio.h>
#include <string.h>
#include <string>

using namespace std;

float check(char chc) {
	if ('a' <= chc && chc <= 'z') return 0;
	if ('Z' <= chc && chc <= 'Z') return 1;
	if (chc == 13) return 2;
}

int main() {
	char c;
	char temp[50];
	int i = 0;
	while (true) {
		c = _getch();
		if (check(c) == 2) {
			break;
		}
		else {
			if (check(c) == 0) {
				c += 32;
				temp[i] = c;
				temp[i + 1] = '';
				cout << temp[i];
				i++;
			}
			else {
				if (check(c) == 1) {
					temp[i + 1] = '';
					temp[i] = c;
					cout << temp[i];
					i++;
				}
			}
		}
	}

	cout << "
Ky Tu: " << temp << endl;
	system("pause");
	return 0;

}
Bài liên quan
0