1. Bài tâp đọc chữ số có ba chữ số trong C
Bài tập cơ bản này ta có thể có hướng giải quyết là sử dụng cấu trúc switch case trong ngôn ngữ lập trình C.
Đầu vào sẽ là một số int N là số có ba chữ số, yêu cầu của bài toán là đọc chữ số có ba chữ số đó trong C.
2. Lời giải
Để giải được bài tập đọc chữ số có ba chữ số trong C bạn phải có kiến thức về toán học cơ bản, có kiến thức về nhập xuất cơ bản và cách sử dụng cấu trúc switch case trong lập trình C cơ bản.
Các bước thực hiện bài toán như sau:
Bước 1: Khai báo biến int N.
Bước 2: Nhập dữ liệu cho N nếu N không phải số có ba chữ số yêu cầu nhập lại.
Bước 3: Khai báo biến int HangDonVi = N%10 để tính hàng đơn vị của N, khai bao bien int HangChuc = (N/10) % 10 để tính hang chuc của N, khai báo biến int HangTram = N/100 để tính hang trăm của N.
Bước 4: Sử dụng switch truyền vào HangTram với các case lần lượt in ra màn hình là “mot tram” ; “hai tram”; “ba tram”; “bon tram”; “nam tram”; “sau tram”; “bay tram”; “tam tram”; “chin tram”.
Bước 5: Sử dụng switch truyền vào HangChuc với các case lần lượt in ra màn hình là “muoi” ; “hai muoi”; “ba muoi”; “bon muoi”; “nam muoi”; “sau muoi”; “bay muoi”; “tam muoi”; “chin muoi”.
Bước 6: Sử dụng switch truyền vào HangDonVi với các case lần lượt in ra màn hình là “mot”; “hai”; “ba”; “bon”; “nam”; “sau”; “bay”; “tam”; “chin”.
Chương trình giải bài tập đọc chữ số có ba chữ số trong C như sau :
#include <stdio.h> int main() { //khai bao N int N; //nhap N la so co hai chu so neu sai yeu cau nhap lai do { printf("Nhap N:"); scanf("%d", &N); if(N<99 || N>999) { printf("Nhap lai N la so co 3 chu so!\n"); } }while(N<99 || N>999); //khai bao so hang don vi int HangDonVi = N%10; //khai bao so hang chuc int HangChuc = (N / 10) % 10; //khai bao so hang tram int HangTram = N/100; //in ra so hang tram switch(HangTram) { case 1: printf("mot tram "); break; case 2: printf("hai tram "); break; case 3: printf("ba tram "); case 4: printf("bon tram "); break; case 5: printf("nam tram "); break; case 6: printf("sau tram "); break; case 7: printf("bay tram "); break; case 8: printf("tam tram "); break; case 9: printf("chin tram "); break; } //neu so hang chuc bang 0 in chu "le" if(HangChuc%10==0 && HangDonVi !=0) { printf("le "); } //in ra so hang chuc switch(HangChuc) { case 1: printf("muoi "); break; case 2: printf("hai muoi "); break; case 3: printf("ba muoi "); case 4: printf("bon muoi "); break; case 5: printf("nam muoi "); break; case 6: printf("sau muoi "); break; case 7: printf("bay muoi "); break; case 8: printf("tam muoi "); break; case 9: printf("chin muoi "); break; } //in ra so hang don vi switch(HangDonVi) { case 1: printf("mot"); break; case 2: printf("hai"); break; case 3: printf("ba"); break; case 4: printf("bon"); break; case 5: printf("nam"); break; case 6: printf("sau"); break; case 7: printf("bay"); break; case 8: printf("tam"); break; case 9: printf("chin"); break; } }
Ví dụ tôi nhập N=102
Kết quả:
Nhap N:102 mot tram le hai |