II. Các cấu trúc điều khiển trong C:
2. Lệ nh continue:
Lệ nh continue chỉ dù ng trong vòng lặ p là m cho chươ ng trì nh nhả y tắ t về đ iề u kiệ n kiể m tra củ a vòng lặ p đ ể bắ t đ ầ u mộ t vòng lặ p mớ i.
Ví dụ : Viế t chươ ng trì nh nhậ p mộ t câ u chữ thườ ng kế t thú c bằ ng dấ u chấ m, xuấ t ra bằ ng chữ hoa void main () { char ch; while (1) { ch = getch (); if ((ch> = ‘a’) && (ch< = ‘z’)) printf(“%c”, ch - ‘a’ + ‘A’); if (ch == ‘ ‘ ) continue;
if (ch == ‘.’) break; }
}
3. Lệ nh goto: dùng để chuyể n điề u khiể n chương trì nh về một vị trí nà o đó.
Cú phá p: Goto nh∙n;
Lệ nh goto sẽ chuyể n đ iề u khiể n chươ ng trì nh ngay lậ p tứ c về vị trí đ ặ t nh∙n. Ví dụ : Again: ; . . goto Again; Bà i tậ p: 1. Viế t chươ ng trì nh tí nh diệ n tí ch - Hì nh vuô ng - Hì nh thang - Tam giá c thườ ng - Tam giá c vuô ng - Hì nh tròn 2. Tí nh khoả ng cá ch mộ t đ iể m (X0, Y0) tớ i mộ t đườ ng thẳ ng Ax + By + C = 0 B A C By Ax S 0 2 02 + + + = , nhậ p A, B, C, X0, Y0 3. Cho 3 số thự c x, y, z. Tì m a. Max(x+y+z, x*y*z)
b. Min2 ((x+y+z) / 2, x*y*z) +1
4. Viế t chươ ng trì nh tì m số lớ n nhấ t trong 3 số nguyê n a,b, c 5. Giả i phươ ng trì nh bậ c 2 Ax2+Bx+C = 0 trê n trườ ng số thự c.
6. Viế t chươ ng trì nh tí nh diệ n tí ch hì nh tròn, biế t bá n kí nh r dương; Chương trì nh có kiể m tra số liệ u nhậ p và o, nế u r <=0 thì chương trì nh bá o lỗi và bắ t nhậ p lạ i.
7. Viế t chươ ng trì nh nhậ p số thậ p lụ c phâ n in ra số nhị phâ n, cứ 4 số thì cá ch mộ t khoả ng trắ ng.
8. Viế t chươ ng trì nh tạ o 1 má y tí nh gồ m cá c phép toá n sau : + , - , * , / , ^ (ax vớ i x nguyê n dươ ng), @ (ex )
9. Viế t chươ ng trì nh kiể m tra 1 bit bấ t kì củ a số bằ ng 0 hay 1
10. Viế t chươ ng trì nh tí nh kế t quả của một số sau khi dịch phả i hoặ c dịch trá i n lầ n.
11. Đế m số lầ n xuấ t hiệ n củ a từ mộ t trong 1 câ u 12. Thay thế 1 từ trong 1 câ u bằ ng 1 từ khá c.
13. Nhậ p họ tê n, tá ch hoten ra là m 2 phầ n họ và tê n riê ng.
14. Viế t chươ ng trì nh đổi cá c ký tự đầ u của cá c từ ra chữ in, cá c ký tự còn lạ i ra chữ thườ ng.
15. Viế t chươ ng trì nh cho phép ta kiể m tra mộ t password là đ ú ng hay sai (nhậ p tố i đ a password 3 lầ n).
16. Cho chuỗ i s, viế t chươ ng trì nh di chuyể n chữ từ bê n trá i qua bê n phả i củ a mà n hì nh tạ i dòng 5. Quá trì nh di chuyể n dừ ng lạ i khi ta ấ n phí m ESC. 17. Bạ n h∙y viế t chương trì nh tí nh giá trị tổng cộng của một sả n phẩ m có kể cả
thuế , biế t rằ ng tỷ suấ t thuế là 13.6% tí nh trê n giá gốc. Giá gốc của sả n phẩ m đượ c đ ọ c và o, và cầ n in ra:
- Tiề n thuế - Giá đ∙ có thuế
18. Trong mộ t kỳ thi cuố i khó a, cá c họ c viê n phả i thi 4 mô n : mô n I hệ số 2, mô n II hệ số 4, mô n III hệ số 1, mô n IV hệ số 2, đ iể m cá c mô n cho tố i đ a là 10 đ iể m. Viế t chươ ng trì nh nhậ p đ iể m củ a 4 môn và tí nh điể m trung bì nh. 19. Mộ t ngườ i bá n rượ u bá n N chai rượu có đơn giá là P. Nế u tổng số tiề n vượt quá 5000000 thì việ c chuyê n chở là miể n phí , nế u khô ng phí chuyê n chở thường được tí nh bằ ng 1% tổng trị giá hà ng. Viế t chương trì nh nhậ p và o N, P. In ra cá c chi tiế t Tổ ng trị giá hà ng, tiề n chuyê n chở , và tổng số tiề n phả i trả . 20. Mộ t sinh viê n dự tuyể n có cá c chi tiế t sau : họ tê n, điể m L1 của lầ n 1, điể m L2 củ a lầ n 2, đ iể m thi cuố i kỳ CK. Viế t chương trì nh xá c định xem một sinh viê n có được tuyể n hay bị loạ i, biế t rằ ng sẽ được tuyể n nế u điể m được tí nh theo cô ng thứ c sau lớ n hơ n hay bằ ng 7 : Max( (L1+L2+CK)/3, CK).
21. Viế t chương trì nh cho biế t tiề n lương hà ng ngà y của một người giữ trẻ . Cá ch tí nh là 15000đ /giờ cho mỗ i giờ trướ c 14 giờ và 25000 đ /giờ cho mỗi giờ sau 14 giờ . Giờ bắ t đ ầ u và giờ kế t thú c cô ng việ c đượ c nhậ p từ bà n phí m. 22. Cho 3 số thự c x, y z
a. Tồ n tạ i hay khô ng mộ t tam giá c có 3 cạ nh có đ ộ dà i x, y, z ? b. Nế u là tam giá c thì nó vuô ng, câ n, đ ề u hay thườ ng
ax+by = c a’x+b’y = c’ Hướ ng dẫ n: D = a b a’ b’ = ab’ - a’b Dx= c b c’ b’ = cb’ - c’b Dy= a c a’ c’ = ac’ - a’c if D!= 0 x= Dx/D; y= Dy/ D
else if (( Dx != 0) | | ( Dy != 0)) pt vô nghiệ m else pt vô đ ịnh 24. Giả i hệ phươ ng trì nh 3 ẩ n số bậ c nhấ t a1x + b1y + c1z = d1 a2 x + b2 y + c2 z = d2 a3 x + b3 y + c3 z = d3 25. Viế t chươ ng trì nh giả i phươ ng trì nh trù ng phươ ng ax4 + bx2 + c = 0 26. Người ta muốn lậ p hóa đơn cho khá ch hà ng của Công ty điệ n lực. Chỉ số đầ u
và chỉ số cuối kỳ sẽ được cho biế t. Biế t rằ ng biể u giá được tí nh tùy theo điệ n nă ng tiê u thụ .
- Nế u đ iệ n nă ng tiê u thụ nhỏ hơ n 100Kwh, giá mỗ i Kwh là 500đ .
- Nế u điệ n nă ng tiê u thụ từ 100Kwh trở lê n, thì mỗi Kwh dôi ra sẽ được tí nh giá là 800đ
- Phí khu vự c là 5000đ cho mỗ i khá ch hà ng. Viế t chươ ng trì nh tí nh tiề n phả i trả tổ ng cộ ng gồ m tiề n đ iệ n, và phí khu vự c
27. Biế t 2 số X, Y biể u diể n thời gian tí nh theo giâ y. Người ta muốn viế t chương trì nh :
- Đọ c 2 số nà y và in ra tổ ng củ a chú ng
- Chuyể n cá c số nà y và tổ ng ra dạ ng giờ , phĩ t, giâ y củ a chú ng rồ i in ra. Kiể m xem kế t quả củ a 2 cá ch tí nh có như nhau khô ng?
28. Viế t chươ ng trì nh in bả ng cử u chươ ng từ 2 → 9 theo hà ng ngang 29. In tam giá c *, hì nh chữ nhậ t *, rỗ ng - đ ặ c
30. Vẽ lưu đ ồ và viế t chươ ng trì nh tí nh : a. 1+2+...+n
b. 1+3+5+...+2n-1 c. 2+4+6+...+2n d. 12+ 22+ 32+...+n2 e. 1/1+ 1/2+ 1/3+...+ 1/n f. 2+4+8+...+2n g. 1+ 1/22 + 1/32 +....+ 1/n2
31. Cho epsilon = 0.000001, xá c đ ịnh cá c tổ ng sau đ â y sao cho số hạ ng cuố i cù ng củ a tổ ng là khô ng đ á ng kể (số hạ ng cuố i cù ng < epsilon )
a. 1/1+ 1/2+ 1/3+1/4+... b. 1+ 1/22 + 1/32 +....+...
32. Viế t chươ ng trì nh in ra bả ng m∙ ASCII, 16 ký tự trê n 1 dòng. 33. Vẽ lưu đ ồ và viế t chươ ng trì nh :
a. Xét mộ t số có phả i là số nguyê n tố hay khô ng ? b. In trê n mà n hì nh 100 số nguyê n tố đ ầ u tiê n
34. Viế t chươ ng trì nh cho phép mộ t ký tự ngẫ u nhiê n rơ i trê n mà n hì nh. Nế u ngườ i sử dụ ng khô ng kịp ấ n phí m tương ứng và để chạ m đá y mà n hì nh thì thua cuộ c. 35. Cho hà m Fibonacci: Fn = { 1 ; n=0,1 Fn-1 + Fn-2 ; n>=2 a. Tì m Fn, vớ i n do ta nhậ p b. In ra N phầ n tử đ ầ u tiê n củ a d∙y Fibonacci
36. Viế t chương trì nh đọc và o số nguyê n N và in ra 1*2*3*..*N cho đế n khi N <=0. 37. Cho 1 d∙y gồ m mộ t triệ u từ 32 bit, h∙y đ ế m số bit 1 trong mỗ i từ .
38. Viế t chươ ng trì nh đ oá n số : người chơi sẽ đoá n 1 số trong phạ m vi từ 0 đế n 100, tối đa 5 lầ n. Chương trì nh kiể m tra kế t quả và xuấ t thông bá o hướng dẫ n: - Số bạ n đ oá n lớ n hơ n
- Số bạ n đ oá n nhỏ hơ n - Bạ n đ oá n đ ú ng
III. Hàm - Đệ quy: III.1. Hà m: