Chuyển số ở hệ 10 sang hệ 2 với những điều kiện kèm theo !Viết chương trình cho nhập vào một số nguyên dương N (kiểu unsigned char).a) Hãy bật 5 bit cuối (bit thấp) của N và giữ nguyên giá trị 3 bit đầu (bit cao) của N.b) Hãy tắt 5 bit cuối của N và giữ nguyên giá trị của 3 bit đầu của Nc) Hãy đảo 5 bit cuối của N và giữ nguyên giá trị của 3 bit đàu của NGhi chú: bật bit là làm cho bit đó có giá trị 1 (dùng phép OR trên bit), tắt bit là làm cho bit đó có giá trị 0 (dùng phép AND trên bit), đảo bit là làm cho bit đó có giá trị từ 0 thành 1 và ngược lại từ 1 thành 0 (dùng phép XOR trên bit)Ví dụ: Nhập vào N=38=> N=00100110kết quả:a) N=00111111b) N=00100000c) N=00111001

Bạn đang xem: Unsigned char là gì

Vấn đề em muốn thắc mắc ở đây là Tại sao kiểu Unsigned char này nó chỉ nhận được có 1 kí tự đầu tiên của số àh.Ví dụ em nhập vào n=120 thì nó chỉ nhận số 1 đầu tiên. Nếu nhập 42 thì nó chi nhận được số 4.Chương trình của em đây
Bác nào biết xin chỉ giúp, còn vài hôm nữa là em thi rồi.
*
Mà bác nào biết giải nguyên bài toán thì giải giúp em luôn. Cảm ơn nhiều
*
*
Trả lời cùng với trích dẫn
*

Thành viên chính thức
*

unsigned Char là kiểu dữ liệu chỉ chứa 1 kí tự giá trị từ <0-255>nên nó chỉ nhận 1 kí tự khi đọc vào bộ nhớ.Muốn nhận nhiều hơn thì khai báo thành mảng kí tự!
*

Xem thêm: Garry Kasparov Là Ai - 5 Kỳ Thủ Vĩ Đại Nhất Thế Giới

Thành viên chính thức
*

a) Hãy bật 5 bit cuối (bit thấp) của N và giữ nguyên giá trị 3 bit đầu (bit cao) của N.b) Hãy tắt 5 bit cuối của N và giữ nguyên giá trị của 3 bit đầu của Nc) Hãy đảo 5 bit cuối của N và giữ nguyên giá trị của 3 bit đàu của NGhi chú: bật bit là làm cho bit đó có giá trị 1 (dùng phép OR trên bit), tắt bit là làm cho bit đó có giá trị 0 (dùng phép AND trên bit), đảo bit là làm cho bit đó có giá trị từ 0 thành 1 và ngược lại từ 1 thành 0 (dùng phép XOR trên bit)
int main(void){ unsigned char c; printf("Nhap :"); scanf("%d",&c); printf("%c",c); getch(); return 0;}
Bạn ơi mình được dạy sữ dụng cout với cin chứ gv không dạy theo cách dùng printf và scanf.Bạn viết giúp mình theo cách dùng cout và cin với. Thanks
unsigned Char là kiểu dữ liệu chỉ chứa 1 kí tự giá trị từ <0-255>nên nó chỉ nhận 1 kí tự khi đọc vào bộ nhớ.Muốn nhận nhiều hơn thì khai báo thành mảng kí tự!
Nếu sữ dụng mảng thì nhập nhiều số được nhưng khi tính bị sai.Ví dụ nếu khai báo n thuộc kiểu unsigned char<3>
thì khi nhập n vào, mình mà cout


Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *