Tải bản đầy đủ (.pdf) (7 trang)

www vietthuvien com bai tap lap trinh cplus 167

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (276.48 KB, 7 trang )

BÀI TẬP LẬP TRÌNH CPLUS


Bài 1. Viết chương trình nhập từ bàn phím n số nguyên dương nhỏ hơn 100, in ra màn hình
hai cột song song, một cột là các số, còn cột kia là tổng của các chữ số tương ứng ở cột thứ
nhất. Tìm và in ra số có tổng của các chữ số là lớn nhất, nếu có nhiều hơn một số như vậy
thì in số đầu tiên.
Bài 2. Một người gửi tiết kiệm a đồng với lãi suất s% một tháng (tính lãi hàng tháng). Việt
một chương trình tính và in ra màn hình hai cột song song, cột thứ nhất là số tháng đã gửi, cột
thứ hai tổng số tiền (cả vốn và lãi) ứng với số tháng ở cột thứ nhất cho một khoảng thời gian
từ 1 đến t tháng, với a, s, t được nhập từ bàn phím.
Bài 3. Một người gửi tiết kiệm à đồng với lãi suất là s% một tháng trong kỳ hạn 6 tháng (6
tháng tính lãi một lần). Viết chương trình tính và in ra màn hình hai cột song song, cột thứ
nhất là số tháng đã gửi, cột thứ hai là tổng tiền (cả vốn và lãi) ứng với số tháng ở cột thứ
nhất cho một khoảng thời gian từ 6 tháng đến t tháng, với a, s, và t được nhập từ bàn phím.
(Biết rằng nếu lĩnh khơng chắn kỳ nào thì khơng được tính lãi kỳ ấy).
Bài 4. Cho x là một số thực, hãy xây dựng hàm tính và in ra màn hình hai cột song song, cột
thứ nhất là giá trị của đối số, cột thứ hai là giá trị của hàm f ứng với đối số ở cột thứ nhất:
Sau đó, viết một chương trình nhạp từ bán phím một mảng gồm n số thực, và gọi hàm đã lập
được ở trên với đối số là các số vừa nhập.
Bài 5. Viết chương trình tính và in ra màn hình số tiền điện tháng 10/99 của n khách hàng theo
các chỉ số trên đồng hồ điện của tháng 9 và của tháng 10 được nhập vào từ bàn phím (phải
kiểm tra để đảm bảo rằng chỉ số của tháng sau phải lớn hơn chỉ số của các tháng trước).
Biết rằng: 50 số đầu tiền giá 500 đồng/số, 100 số tiếp theo giá 800 đồng/số, 100 số tiếp theo
nữa giá 1000 đồng/số, 100 số tiếp theo nữa giá 1200 đồng/số, và từ số thứ 351 trở đi giá 1500
đồng/số.
Bài 6. Viết một chương trình nhập vào từ bàn phím điểm kiểm tra của một mơn học của n
học sinh và in kết quả ra màn hình dưới dạng hai cột song song, một cột là điểm và cột thứ
hai là xếp loại theo điểm với các qui định sau:
Dưới 5: Yếu
Từ 5 đến dưới 7: Trung bình


Từ 7 đến dưới 9: Khá
Từ 9 trở lên: Giỏi
Bài 7. Viết chương trình giải phương trình bậc hai ax2+bx+c=0 với a, b, c bất kỳ được nhập
vào từ bàn phím. In ra màn hình phương trình bậc hai với các hệ số đã nhập, giá trị của delta
và các nghiệm thức của nó (nếu cố), ngươcij lại thì in là khơng có nghiệm thực.
Bài 8. Năm 1999, dân số nước ta là 76 triệu người, tỷ lệ tăng tự nhiên là k% một năm. Lập
một chương trình in ra màn hình hai cột song song, cột thứ nhất là năm, cột thứ hai là dân số
của năm tương ứng ở cột một cho đến khi dân số tăng s lần so với năm 1999. Các số k và s


được nhập vào từ bàn phím.
Bài 9. Viết chương trình giải bất phương trình bận hai với a, b, c bất kỳ được nhập từ bàn
phím: ax2+bx+c>0 . In ra màn hình bất phương trình với các hệ số đã nhập, giá trị của delta
và các nghiệm thực của bất phương trình.
Bài 10. Xây dựng một hàm sắp xếp thep thứ tự tăng dần một mảng gồm n số thực. Viết
chương trình để nhập n số thực từ bàn phím, sử dụng hàm sắp xếp nói trên, và in ra màn hình
hai cột song song, một cột là mảng chưa sắp xếp, một cột là mảng đã được sắp xếp.
Bài 11. Xây dựng một hàm sắp xếp thep thứ tự giảm dần một mảng gồm n số thực. Viết
chương trình để nhập n số thực từ bàn phím, sử dụng hàm sắp xếp nói trên, và in ra màn hình
hai cột song song, một cột là mảng chưa sắp xếp, một cột là mảng đã được sắp xếp.
Bài 12. Cho F là một số thực lớn hơn 2, và S=1/2+1/3+…+1/n. Hãy xây dựng một hàm để tìm
giá trị lớn nhất của n sao cho S<=F. Viết một chương trình để nhập vào từ bàn phím m số
thực Fi, sử dụng hàm nói trên đối với các hàm Fi đã nhập và in ra màn hình thành ba cột song
song: các giá trị của Fi, n, và S tương ứng.
Bài 13. Cho F là một số thực lớn hơn 2, và S=1/2+1/3+…+1/n. Hãy xây dựng một hàm để tìm
giá trị nhỏ nhất của n sao cho S<=F. Viết một chương trình để nhập vào từ bàn phím m số
thực Fi, sử dụng hàm nói trên đối với các hàm Fi đã nhập và in ra màn hình thành ba cột song
song: các giá trị của Fi, n, và S tương ứng.
Bài 14. Xây dựng một hàm tính giá trị trung bình của n số thực. (Giá trị trung bình của một
dãy số được cho bằng cơng thức:

).
Sử dụng hàm nói trên để viết chương trình nhập n số thực từ bàn phím và in ra màn hình cột
số đã nhập, tổng, giá trị trung bình của chúng.
Bài 15. Xây dựng một hàm tính giá trị trung bình của n số thực. (Độ lêcnh chuẩn của dãy số
được cho bằng công thức:
, với
).
Sử dụng hàm nói trên để viết chương trình nhập n số thực từ bàn phím và in ra màn hình cột
số đã nhập, tổng, giá trị trung bình và độ lệch chuẩn của chúng.
Bài 16. Hãy xây dựng một hàm để nhập từ bàn phím một mảng số thực. Viết một chương
trình sử dụng hàm đã xây dựng được ở trên để nhập số liệu cho hai mảng số thực, một mảng
có n phẩn tử, và một mảng có m phần tử, in ra màn hình hai cột song song, mỗi cột là một
mảng với ô cuối cùng là tổng của các phần tử trong mảng, và cuỗi cùng là tổng của hai
mảng.
Bài 17. Hãy xây dựng một hàm để nhập từ bàn phím một mảng số thực. Viết một chương
trình sử dụng hàm đã xây dựng được ở trên để nhập số liệu cho hai mảng số thực, một mảng
có n phẩn tử, và một mảng có m phần tử, in ra màn hình ba cột song song, hai cột đầu là hai
mảng đã nhập, cột thứ ba tổng của hai cột đầu, dòng cuỗi cùng của cả ba cột là tổng của các
phần tử trong cột.


Bài 18. Cho tuổi và số con của n phụ nữ trong độ tuổi 15-49, hãy xây dựng một hàm tính và in
bản phân bố của các phụ nữ này theo nhóm 5 tuổi. Viết chương trình để nhập tuổi và số con
của n phụ nữ trong độ tuổi 15-49, sau đó sử dụng hàm đã xây dựng ở trên để in bảng phân bố
theo tuổi.
Bài 19. Cho tuổi và số con của n phụ nữ trong độ tuổi 15-49, hãy xây dựng một hàm tính và in
bản phân bố của các phụ nữ này theo nhóm 5 tuổi. Viết chương trình để nhập tuổi và số con
của n phụ nữ trogn độ tuổi 15-49, sau đó sử dụng hàm đã xây dựng ở trên để in bảng phân bố
số con của các phụ nữ này theo tuổi.
Bài 20. Cho một xây bất kỳ, không sử dụng các hàm thư viện về xâu, hãy xây dựng một hàm

đổi tất cả các chữ thường thành chữ hoa (các ký tự khác giữ nguyên) và in cả hai ra màn
hình. Viết một chương trình nhập một xây bất kỳ từ bàn phím, sau đó sử dụng hàm đã xây
dựng ở trên để in kết quả ra màn hình.
Bài 21. Cho một xây bất kỳ, không sử dụng các hàm thư viện về xâu, hãy xây dựng một hàm
đổi tất cả các chữ hoa thành chữ thường (các ký tự khác giữ nguyên) và in cả hai ra màn
hình. Viết một chương trình nhập một xây bất kỳ từ bàn phím, sau đó sử dụng hàm đã xây
dựng ở trên để in kết quả ra màn hình.
Bài 22. Cho một xây bất kỳ, không sử dụng cac shamf thư viện về xâu, hãy xây dựng một
hàm đổi tất cả các chữ hoa của xây thành chữ thường, và ngược lại, đổi các chữ thường
của xâu thành chữ hoa (các chữ khác giữ nguyên) và in cả hai ra màn hình. Viết một chương
trình nhập một xâu bất kỳ từ bàn phím, sau đó sử dụng hàm đã xây dựng ở trên đê in kết quả
ra màn hình.
Bài 23. Cho cấu trúc:
Code:
struc thisinh{
int
sbd;
char
hoten[25];
float
m1,m2,m3l
float
tong;
} danhsach[100];

//Số báo danh
//Họ và tên
//Điểm ba môn thi
//Tổng điểm ba môn


Hãy xây dựng một hàm để nhập số liệu cho n thí sinh. Sau đó viết một chương trình sử dụng
hàm nói trên để nhập số liệu và in bảng điểm của các thí sinh này theo dạng ba cột: Số báo
danh, Họ tên, Tổng điểm.
Bài 24. Cho một xây bất, hãy xây dựng một hàm để sửa các lỗi chính tả không viết hoa đầu
câu trong xâu này, in ra xâu chưa sửa và xâu đã sửa. Sau đó viết một chương trình để nhập
một xâu và sử dụng hàm nói trên để sửa lỗi.
Bài 25. Cho cấu trúc:
Code:
struc dienthoai{


int
char
float
} thuebao[100];

sdt;
hoten[25];
sotien;

//Số điện thoại
//Họ và tên
//Số tiền phải nộp

Hãy xây dựng một hàm để nhập số liệu cho n thuê bao. Sau đó viết một chương trình sử
dụng hàm nói trên để nhập số liệu và in bảng số tiền phải nộp của các thuê bao theo dạng ba
cột: Họ tên, số điện thoại, số tiền phải nộp.
Bài 26. Hãy xây dựng một hàm in ra màn hình nội dung một tệp văn bản bất kỳ (có dựng lại
sau mỗi trang màn hình). Sau đó, viết một chương trình để nhập vào từ bàn phím tên của một
tệp văn bản và sử dụng hàm nói trên để in nội dung của tệp này ra màn hình.

Bài 27. Cho tuổi và trình độ văn hóa (0-4) của n người, hãy xây dựng một hàm in bản phân bố
của số người này theo nhóm 5 tuổi và trình độ văn hóa. Sau đó, viết một chương trình để
nhập tuổi và trình độ văn hóa của n người, sử dụng hàm nói trên để in kết quả ra màn hình.
Bài 28. Viết một chương trình để nhập tuổi và trình độ văn hóa (0-4) của n người, sau đó ghi
các số liệu này lên một tệp mode văn bản.
Bài 29. Cho một xâu bất kỳ, hãy xây dựng một hàm để sửa các lỗi chính tả khơng có dấu
cách sau dấu phảy và sau dấu chấm, in ra màn hình xâu chưa sửa và xâu đã sửa. Sau đó viết
chương trình để nhập một xâu bất kỳ và sử dụng hàm nói trên để sửa lỗi.
Bài 30. Cho một xâu bất kỳ, hãy xây dựng một hàm để sửa các lỗi chính tả khơng có dấu
cách giữa các từ, in ra xâu gốc và xâu đã sửa. Sau đó viết một chương trình để nhập một xâu
ký tự bất kỳ và sử dụng hàm nói trên để sửa lỗi.
Bài 31. Cho một xâu bất kỳ, hãy xây dựng một hàm để viết hoa chữ cái đầu tiên của tất cả
các từ trong xâu đã cho, in ra xâu gốc và xâu đã sửa. Sau đó viết một chương trình để nhập
một xâu ký tự bất kỳ và sử dụng hàm nói trên để sửa lỗi.
Bài 32. Cho cấu trúc:
Code:
struc tiendien{
char
hoten[25];
float
csc,csm;
float
dg;
float tong;
} danhsach[100];

//Họ và tên
//Chỉ số cũ, chỉ số mới
//Đơn giá/Kw
//Tổng tiền phải nộp


Hãy xây dựng một hàm để nhập số liệu cho n hộ sử dụng điện. Sau đó, viết một chương
trình sử dụng hàm nói trên để nhập số liệu và in bảng tính tiền sử dụng điện thoại của các
hộ này theo dạng hai cột: Họ tên, số điện tiêu thụ, Tổng số tiền.
Bài 33. Hãy xây dựng một hàm để nhập từ bàn phím một mảng các số thực. Viết chưng trình
sử dụng hàm nói trên để nhập số liệu cho hai mảng số thực cùng có n phần tử, in ra màn hình
ba cột song song, hai cột đầu là hai mảng đã nhập, còn cột thứ ba là hiệu của hai cột đầu,


#include <iostream.h>
void trim(char *s){
for(int i=0; s[i]!='\0'; )
if(s[i]==' ' && s[i+1]==' ')
for(int k=i; s[k]!='\0'; k++) s[k] = s[k+1];
else
i++;
if(s[i-1]==' ') //cắt đi kí tự trắng bên phải (nếu cịn)
s[i-1] = 0;
if(s[0]==' ') //cắt đi kí tự trắng bên trái (nếu cịn)
for(i=0; s[i]!='\0'; i++) s[i] = s[i+1];
}
void main(){
char s[80];
cout<<"Moi ngai nhap xau ky tu: ";
cin.getline(s,80);
trim(s);
cout<được cả dấu cách thừa bên phải
}


Mai đi cơng tác play rồi, hok cịn thời gian post bài, nên đưa ra vài đầu bài, các bạn phân tích
và cùng thảo luận cách giải nhé, ai giải đúng khi về malyfo sẽ tuyên dương (và cho kẹo nữa,
hehe)
Bài 6: Viết hàm đếm số từ xuất hiện trong xâu. Ứng dụng hàm đó viết chương trình hồn
chỉnh nhập xâu ký tự từ bàn phím, in ra màn hình số từ có trong xâu
Bài 7: Viết hàm đếm số từ bắt đầu bằng 'tr' có trong xâu. Ứng dụng hàm đó viết chương trình
hồn chỉnh nhập xâu ký tự từ bàn phím, in ra màn hình số từ bắt đầu bằng 'tr' có trong xâu.
Bài 8: Viết hàm đếm số kết thúc bằng 'ng' có trong xâu. Ứng dụng hàm đó viết chương trình
hồn chỉnh nhập xâu ký tự từ bàn phím, in ra màn hình số từ kết thúc bằng 'ng' có trong xâu.
Bài 9: Viết hàm in các từ trong xâu, mỗi từ trên 1 dòng. Ứng dụng hàm đó viết chương trình
hồn chỉnh nhập xâu ký tự từ bàn phím, in ra màn hình các từ trong xâu, mỗi từ trên 1 dòng
Bài 10: Viết hàm kiểm tra xem 1 chuỗi có phải chứa tồn ký tự số hay không? Ứng dụng hàm
trên và hàm trong bài 9 viết chương trình hồn chỉnh nhập xâu ký tự từ bàn phím để đếm xem
trong xâu có bao nhiêu từ toàn là số?
Bài 11: Viết hàm kiểm tra xem 1 chuỗi có phải chứa tồn ký tự số hay khơng? Nếu tồn là số
thì tính giá trị của số tương ứng với chuỗi đó? Ứng dụng hàm trên và hàm trong bài 9 viết
chương trình hồn chỉnh nhập xâu ký tự từ bàn phím để tính tổng các từ là số trong xâu?
Bài 12: chưa nghĩ ra, hehe, thế cái đã, các bạn thử sức nhé, quan trọng là chỗ phân tích để
người khác hiểu. hì, nếu các bài trên có ai khơng hiểu thì cho ý kiến nhé




×