Cần giúp đỡ bài tập: chưa hiểu "kí tự chữ" và "kí tự số" là gì

Mọi người giúp e bài này với? e đọc mà chưa hiểu “kí tự chữ” và “kí tự số” là như thế nào

Sử dụng Dev C++ để viết chương trình C thực hiện nội dung sau:
Đọc kí tự người dùng nhập vào từ bàn phím, và in lên màn hình “ky tu so” nếu người dùng nhập các số từ 0 -> 9, in lên màn hình “ky tu chu” nếu người dùng nhập các chữ từ a -> z hoặc A -> Z. Nếu người dùng nhập vào dấu . thì kết thúc chương trình.

Bài này nó yêu cầu dùng vòng lặp và rẽ nhánh để thực hiên chương trình ạ

  • Ký tự chữ: là những ký tự chữ cái cơ bản vd: 'a', 'b', . . ., 'A', 'B', . . ..
  • Ký tự số: là những ký tự thể hiện chữ số. vd theo cơ số 10: '0', '1', . . . , '9'.

Ý của bài này là bạn phải dùng kiểu char để biểu diễn các ký tự nhập vào. Bạn còn chưa hiểu chỗ nào nhỉ. Thử tham khảo bài :point_down:.

#include <stdio.h>

int main() {
	char c = 0;
	while (c != '.') {
		c = getchar();
		if (('0' <= c && c <= '9') || ('a' <= c && c <= 'z') || ('A' <= c && c <= 'Z'))
			printf("%c\n", c);
	}
	return 0;
}
4 Likes

nếu ý tưởng dùng câu lệnh rẽ nhánh kết hợp với vòng lặp thì code ntn ạ
cho mình xin ý tưởng với :))

mình làm như này

#include <stdio.h>

int main() {
	char c = 0;
	while (c != '.') {
		c = getchar();
		if ('0' <= c && c <= '9') 
		     printf("%c\n", c);
		else if ('a' <= c && c <= 'z')
			printf("%c\n", c);
		else if ('A' <= c && c <= 'Z')
		    printf("%c\n", c);
	}
	return 0;
}

Không khác gì code của mình ở :point_up: bạn ơi, chỉ là mình đã gộp 3 cái if lại.


Bạn format lại code đi nha, qua markdown để biết cách làm nha bạn.

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?