Bài giảng Lập trình C - Chương 4: Lệnh và/ra dữ liệu và các cấu trúc điều khiển chương trình - Ngô Công Thắng
Lệnh continue chỉ dùng với các lệnh lặp for, while và do-while
Lệnh continue không làm thoát khỏi lệnh lặp mà làm cho lệnh lặp bỏ qua các lệnh sau lệnh Continue để thực hiện vòng lặp tiếp theo
40 trang |
Chia sẻ: huongthu9 | Lượt xem: 549 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Bài giảng Lập trình C - Chương 4: Lệnh và/ra dữ liệu và các cấu trúc điều khiển chương trình - Ngô Công Thắng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 1
Ch ng 4. L nh vào/ra d li uươ ệ ữ ệ
va cac câu truc điêu khiên ch ng trình ̀ ́ ́ ́ ̀ ̉ ươ
I. L nh vào/ra d li uệ ữ ệ
II. L nh l a ch nệ ự ọ
III. L nh l pệ ặ
IV. L nh break và continueệ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 2
I. L nh vào/ra d li uệ ữ ệ
1. Khai báo th vi n hàm vào/ra d li uư ệ ữ ệ
2. L nh l y d li u vào t bàn phímệ ấ ữ ệ ừ
3. L nh đ a d li u ra màn hìnhệ ư ữ ệ
4. K t h p gi a l nh printf và scanf đ t ch c ế ợ ữ ệ ể ổ ứ
l y d li u vào t bàn phímấ ữ ệ ừ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 3
I.1. Khai báo th vi n hàm vào/ra d li uư ệ ữ ệ
Đ có th s d ng các l nh vào/ra d li u c a ể ể ử ụ ệ ữ ệ ủ
C khi l p trình trên DOS ta ph i khai báo s ậ ả ử
d ng th vi n hàm stdio:ụ ư ệ
#include
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 4
I.2. L nh l y d li u vào t bàn phímệ ấ ữ ệ ừ
Đ l y d li u t bàn phím vào bi n ta dùng l nh ể ấ ữ ệ ừ ế ệ
scanf theo cú pháp sau:
scanf(dk, đ a ch các ô nh );ị ỉ ớ
Trong đó: 1) dk là h ng xâu ký t đi u khi n ch ằ ự ề ể ỉ
ch a các đ c t chuy n d ng d li u, m i đ c t ứ ặ ả ể ạ ữ ệ ỗ ặ ả
t ng ng v i m t đ a ch ô nh ;ươ ứ ớ ộ ị ỉ ớ
2) đ a ch các ô nhị ỉ ớ phân tách nhau b i d u ch m ở ấ ấ
ph y. S d ng toán t & đ l y đ a ch ô nh c a ẩ ử ụ ử ể ấ ị ỉ ớ ủ
bi n, ví d &aế ụ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 5
I.2. L nh l y d li u vào t bàn phímệ ấ ữ ệ ừ
3) Đ c t chuy n d ng d li u có c u trúc chung nh sau:ặ ả ể ạ ữ ệ ấ ư
%[*][w]Ký t chuy n d ngự ể ạ
- N u có d u * thì tr ng vào v n đ c dò đ c bình th ng ế ấ ườ ẫ ượ ọ ườ
nh ng giá tr c a nó không đ c l u vào b nh . Đ c t ch a ư ị ủ ượ ư ộ ớ ặ ả ứ
d u * s không có ô nh t ng ng.ấ ẽ ớ ươ ứ
- w là m t s xác đ nh chi u dài c c đ i c a tr ng vào.ộ ố ị ề ự ạ ủ ườ
N u không có tham s w ho c n u tham s này l n h n ho c ế ố ặ ế ố ớ ơ ặ
b ng đ dài tr ng vào thì toàn b tr ng vào s đ c đ c, ằ ộ ườ ộ ườ ẽ ượ ọ
n i dung c a nó đ c d ch và đ c đ a vào ô nh t ng ng.ộ ủ ượ ị ượ ư ớ ươ ứ
N u w nh h n đ dài c a tr ng vào t ng ng thì ch ph n ế ỏ ơ ộ ủ ườ ươ ứ ỉ ầ
đ u c a tr ng vào có đ dài b ng w đ c đ c, đ c d ch và ầ ủ ườ ộ ằ ượ ọ ượ ị
đ c gán vào ô nh t ng ng. Ph n còn l i s đ c dùng ượ ớ ươ ứ ầ ạ ẽ ượ
cho đ c t ti p theo. Ví d : vdch4_01.cppặ ả ế ụ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 6
I.2. L nh l y d li u vào t bàn phímệ ấ ữ ệ ừ
4) Ký t chuy n d ng xác đ nh cách th c dò ự ể ạ ị ứ
đ c d li u trên dòng vào cũng nh ph ng ọ ữ ệ ư ươ
pháp chuy n d ch thông tin đ c đ c tr c ể ị ọ ượ ướ
khi gán nó cho các đ a ch t ng ng.ị ỉ ươ ứ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 7
Các ký t chuy n d ng d li u dùng cho scanfự ể ạ ữ ệ
Ký t ự
chuy n ể
d ngạ
Ý nghĩa
c Đ c m t ký t , đ i t ng ng là ô nh ki u charọ ộ ự ố ươ ứ ớ ể
d Đ c m t giá tr int, đ i t ng ng là ô nh ki u intọ ộ ị ố ươ ứ ớ ể
ld Đ c m t giá tr long, đ i t ng ng là ô nh ki u longọ ộ ị ố ươ ứ ớ ể
o Đ c m t giá tr ki u int h 8, đ i t ng ng là ô nh ki u intọ ộ ị ể ệ ố ươ ứ ớ ể
lo Đ c m t giá tr ki u long h 8, đ i t ng ng là ô nh ki u longọ ộ ị ể ệ ố ươ ứ ớ ể
x Đ c m t giá tr ki u int h 16, đ i t ng ng là ô nh ki u intọ ộ ị ể ệ ố ươ ứ ớ ể
lx Đ c m t giá tr ki u long h 16, đ i t ng ng là ô nh ki u longọ ộ ị ể ệ ố ươ ứ ớ ể
f ho c eặ Đ c m t giá tr ki u float, đ i t ng ng là ô nh ki u floatọ ộ ị ể ố ươ ứ ớ ể
lf ho c leặ Đ c m t giá tr ki u double, đ i t ng ng là ô nh ki u doubleọ ộ ị ể ố ươ ứ ớ ể
s Đ c m t xâu ký t , đ i t ng ng là m ng các ô nh ki u charọ ộ ự ố ươ ứ ả ớ ể
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 8
Các ký t chuy n d ng d li u dùng cho scanfự ể ạ ữ ệ
Ký t chuy n ự ể
d ngạ
Ý nghĩa
[dãy ký t ]ự Đ c các ký t cho t i khi g p m t ký t không thu c t p các ký ọ ự ớ ặ ộ ự ộ ậ
t trong hai d u [ ]. Đ i t ng ng là đ a ch c a m ng các ô nh ự ấ ố ươ ứ ị ỉ ủ ả ớ
ki u char. Kho ng tr ng cũng đ c xem là ký t .ể ả ắ ượ ự
[^dãy ký t] Đ c các ký t cho t i khi g p m t ký t thu c t p các ký t trong ọ ự ớ ặ ộ ự ộ ậ ự
hai d u [ ]. Đ i t ng ng là đ a ch c a m ng các ô nh ki u ấ ố ươ ứ ị ỉ ủ ả ớ ể
char. Kho ng tr ng cũng đ c xem là ký t .ả ắ ượ ự
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 9
I.3. L nh đ a d li u ra màn hìnhệ ư ữ ệ
Cú pháp:
printf(dk,các d li u c n đ a ra);ữ ệ ầ ư
Trong đó: 1) dk là h ng xâu ký t đi u khi n có ằ ự ề ể
ch a:ứ
+ Các ký t đi u khi n, ví d nh ‘\n’, ‘\t’, ‘\b’ự ề ể ụ ư
+ Các đ c t chuy n d ng và t o khuôn d li u, m i ặ ả ể ạ ạ ữ ệ ỗ
đ c t dùng cho m t d li u t ng ng c n đ a ra ặ ả ộ ữ ệ ươ ứ ầ ư
màn hình.
+ Các ký t thông th ng.ự ườ
2) Các d li u c n đ a raữ ệ ầ ư có th là h ng, bi n, bi u ể ằ ế ể
th c. Có bao nhiêu d li u đ a ra thì ph i có b y ứ ữ ệ ư ả ấ
nhiêu đ c t chuy n d ng.ặ ả ể ạ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 10
Đ c t chuy n d ng d li uặ ả ể ạ ữ ệ
C u trúc chung:ấ
%[-][fw][.pp]Ký t chuy n d ngự ể ạ
- N u không có d u tr - thì d li u đ c căn ph i ế ấ ừ ữ ệ ượ ả
trong s ch trên màn hình dành cho d li u, còn ố ỗ ữ ệ
th a ch đ tr ng. V i d li u là s , n u fw b t đ u ừ ỗ ể ố ớ ữ ệ ố ế ắ ầ
b ng s 0 thì các ch tr ng s đ c đi n đ y b ng ằ ố ỗ ố ẽ ượ ề ầ ằ
các s 0.ố
- N u có d u tr thì d li u s đ c căn trái, các ch ế ấ ừ ữ ệ ẽ ượ ỗ
th a luôn đ tr ng.ừ ể ố
Ví d trên máy v i d li u c n đ a ra là -2503ụ ớ ữ ệ ầ ư
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 11
Đ c t chuy n d ng d li u (ti p)ặ ả ể ạ ữ ệ ế
C u trúc chung:ấ
%[-][fw][.pp]Ký t chuy n d ngự ể ạ
- fw là s nguyên xác đ nh s ch trên màn ố ị ố ỗ
hình dành cho d li u đ a ra. N u không có ữ ệ ư ế
fw ho c n u fw nh h n đ dài th c t c a d ặ ế ỏ ơ ộ ự ế ủ ữ
li u thì s ch trên màn hình dành cho d li u ệ ố ỗ ữ ệ
s b ng đ dài c a d li u.ẽ ằ ộ ủ ữ ệ
- pp là s nguyên xác đ nh s ch s sau d u ố ị ố ữ ố ấ
ch m th p phân. pp ch dùng cho d li u là s ấ ậ ỉ ữ ệ ố
th c.ự
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 12
Các ký t chuy n d ng d li u dùng cho printfự ể ạ ữ ệ
Ký t ự
chuy n d ngể ạ
Ki u d ể ữ
li uệ
Các chuy n d ngể ạ
c char D li u đ c coi là ký tữ ệ ượ ự
d ho c iặ int D li u đ c coi là s nguyên có d uữ ệ ượ ố ấ
ld ho c liặ long D li u đ c coi là s nguyên có d uữ ệ ượ ố ấ
u int D li u đ c coi là s nguyên không d uữ ệ ượ ố ấ
o int D li u đ c coi là s h 8 không d uữ ệ ượ ố ệ ấ
lo long D li u đ c coi là s h 8 không d uữ ệ ượ ố ệ ấ
x int D li u đ c coi là s h 16 không d uữ ệ ượ ố ệ ấ
lx long D li u đ c coi là s h 16 không d uữ ệ ượ ố ệ ấ
f float/double D li u đ c coi là s th c d ng th p phânữ ệ ượ ố ự ạ ậ
e float/double D li u đ c coi là s th c d ng mũữ ệ ượ ố ự ạ
s Xâu ký tự D li u đ c coi là xâu ký tữ ệ ượ ự
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 13
I.4. K t h p gi a l nh printf và scanf đ t ch c ế ợ ữ ệ ể ổ ứ
l y d li u vào t bàn phímấ ữ ệ ừ
Tr c m i l nh nh p d li u scanf ta nên ướ ỗ ệ ậ ữ ệ
dùng l nh printf đ đ a ra m t l i nh c nh p ệ ể ư ộ ờ ắ ậ
vào d li u gì.ữ ệ
printf(“Loi nhac: ”); scanf( );
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 14
M t ch ng trình C đ n gi nộ ươ ơ ả
Ví d 4.1:ụ
Ch ng trình này l y vào bán kính c a m t ươ ấ ủ ộ
hình tròn, sau đó tính và đ a ra màn di n tích ư ệ
và chu vi c a hình tròn.ủ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 15
II. L nh l a ch nệ ự ọ
1. L nh ki m tra đi u ki n ifệ ể ề ệ
2. L nh th và r nhánh switchệ ử ẽ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 16
II.1. L nh ki m tra đi u ki n ifệ ể ề ệ
L nh ki m tra đi u ki n là đ b o máy ki m tra m t ệ ể ề ệ ể ả ể ộ
đi u ki n, n u đúng thì làm công vi c này, n u sai ề ệ ế ệ ế
thì làm công vi c khác. Bi u th c đi u ki n là m t ệ ể ứ ề ệ ộ
bi u th c logic có giá tr đúng (khác 0) ho c sai ể ứ ị ặ
(b ng 0).ằ
L nh này có 2 d ng:ệ ạ
(1) if (đi u ki n) Câu l nh;ề ệ ệ
(2) if (đi u ki n) Câu_l nh_1; else Câu_l nh_2;ề ệ ệ ệ
trong đó Câu_l nh có th là m t câu l nh đ n l ệ ể ộ ệ ơ ẻ
ho c m t kh i l nh. L u ý là Đi u ki n ph i đ t ặ ộ ố ệ ư ề ệ ả ặ
trong ngo c và sau Câu_l nh_1 v n ph i có d u ặ ệ ẫ ả ấ
ch m ph y.ấ ẩ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 17
II.1. L nh ki m tra đi u ki n if (ti p)ệ ể ề ệ ế
L u đ th c hi n l nh d ng (1) và (2) nh sau:ư ồ ự ệ ệ ạ ư
Đi u ề
ki nệ
Câu l nhệ
L nh ti p theoệ ế
Đúng
Sai
(1)
Câu l nh 2ệ
Đi u ề
ki nệ
Câu l nh 1ệ
L nh ti p theoệ ế
Đúng Sai
(2)
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 18
II.1. L nh ki m tra đi u ki n if (ti p)ệ ể ề ệ ế
Ví d 4.1:ụ
Vi t ch ng trình nh p vào m t s th c, ki m tra n u s đó ế ươ ậ ộ ố ự ể ế ố
d ng thì đ a ra màn hình căn b c 2 c a s đó, n u âm thì ươ ư ậ ủ ố ế
đ a ra thông báo “S âm không có căn b c 2”.ư ố ậ
//Khai bao su dung thu vien chuong trinh
#include
#include
void main()
{
float a;
printf(“Nhap vao mot so: ”);
cin>>a;
if (a>=0) printf("Can bac 2 bang: %6.2f”,sqrt(a));
else printf("So am khong co can bac 2”);
}
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 19
II.2. L nh th và r nhánh switchệ ử ẽ
Khi c n ki m tra giá tr c a m t bi u th c xem có b ng m t giá tr nào trong ầ ể ị ủ ộ ể ứ ằ ộ ị
nhi u giá tr không ta dùng l nh switch.ề ị ệ
Cú pháp: có 2 d ngạ
(1)
switch (Bi u th c)ể ứ
{
case h ng1:ằ
Các câu l nh;ệ
break;
case h ng2:ằ
Các câu l nh;ệ
break;
case h ngN:ằ
Các câu l nh;ệ
break;
}
Không có ch m ph yấ ẩ
Không có ch m ph yấ ẩ
Các l nh ng v i h ng 1ệ ứ ớ ằ
Đ thoát kh i switchể ỏ
Các l nh ng v i h ng 2ệ ứ ớ ằ
Các l nh ng v i h ng Nệ ứ ớ ằ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 20
II.2. L nh th và r nhánh switch (ti p)ệ ử ẽ ế
(2)
switch (Bi u th c)ể ứ
{
case h ng1:ằ
Các câu l nh;ệ
break;
case h ng2:ằ
Các câu l nh;ệ
break;
case h ngN:ằ
Các câu l nh;ệ
break;
default:
Các câu l nh;ệ
break;
}
Không có d u ch m ph yấ ấ ẩ
Không có d u ch m ph yấ ấ ẩ
Các l nh ng v i h ng 1ệ ứ ớ ằ
Đ thoát kh i switchể ỏ
Các l nh ng v i h ng 2ệ ứ ớ ằ
Các l nh ng v i h ng Nệ ứ ớ ằ
Các l nh ng v i defaultệ ứ ớ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 21
II.2. L nh th và r nhánh switch (ti p)ệ ử ẽ ế
Bi u th c sau t khoá switch ph i đ t trong ngo c đ n.ể ứ ừ ả ặ ặ ơ
Bi u th c và các h ng ph i cùng ki u và ph i là ki u s ể ứ ằ ả ể ả ể ố
nguyên ho c ký t .ặ ự
Các h ng có th là m t giá tr h ng ho c bi u th c h ng ằ ể ộ ị ằ ặ ể ứ ằ
(các h ng k t h p v i nhau). Sau các h ng ph i có d u ằ ế ợ ớ ằ ả ấ
hai ch m.ấ
Tr c m i h ng ph i có t khoá case, t c là không th ướ ỗ ằ ả ừ ứ ể
có nhi u h ng chung m t t khoá case.ề ằ ộ ừ
N u mu n nhi u h ng cùng chung m t câu l nh thì các ế ố ề ằ ộ ệ
h ng này đ g n nhau và ch vi t các l nh cùng câu l nh ằ ể ầ ỉ ế ệ ệ
break h ng d i cùng.ở ằ ướ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 22
II.2. L nh th và r nhánh switch (ti p)ệ ử ẽ ế
L u đ th c hi n l nh switch nh sau:ư ồ ự ệ ệ ư
Bi u th cể ứ
= h ng 1?ằ
Các l nh ng ệ ứ
v i h ng 1ớ ằ
Đúng
Các l nh ng ệ ứ
v i h ng Nớ ằ
Đúng
Sai
Các l nh ng ệ ứ
v i default ớ
(n u có)ế L nh ti p theoệ ế
Sai
Bi u th cể ứ
= h ng N?ằ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 23
II.2. L nh th và r nhánh switch (ti p)ệ ử ẽ ế
Ví d 4.2:ụ
Vi t ch ng trình nh p vào tháng và năm, ế ươ ậ
cho bi t tháng trong năm đó có bao nhiêu ế
ngày?
(Ch ng trình trang sau)ươ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 24
II.2. L nh th và r nhánh switch (ti p)ệ ử ẽ ế
//Khai bao su dung thu vien chuong trinh
#include
void main()
{
int t,n;
printf("Nhap vao thang: “);cin>>t;
cout>n;
switch (t)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
cout<<"Thang nay co 31 ngay";
break;
case 4:
case 6:
case 9:
case 11:
cout<<"Thang nay co 30 ngay";
break;
case 2:
if(n%4==0 && n%100 != 0) cout<<"Thang nay co 29 ngay";
else cout<<"Thang nay co 28 ngay";
break;
}
}
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 25
III. L nh l pệ ặ
1. L nh l p v i s l n l p xác đ nh forệ ặ ớ ố ầ ặ ị
2. L nh l p v i l n l p không xác đ nhệ ặ ớ ầ ặ ị
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 26
III.1. L nh l p v i s l n xác đ nh forệ ặ ớ ố ầ ị
Cú pháp:
for (Bi u th c kh i t o;Bi u th c ki m tra; Bi u th c tăng/gi m)ể ứ ở ạ ể ứ ể ể ứ ả
Câu l nh ho c Kh i l nhệ ặ ố ệ
Bi u th c kh i t o dùng đ kh i t o giá tr ban đ u ể ứ ở ạ ể ở ạ ị ầ
cho bi n đi u khi n vòng l p và ch đ c th c hi n ế ề ể ặ ỉ ượ ự ệ
duy nh t m t l n khi b t đ u vào vòng l p for.ấ ộ ầ ắ ầ ặ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 27
III.1. L nh l p v i s l n xác đ nh for (ti p)ệ ặ ớ ố ầ ị ế
Bi u th c ki m tra dùng đ ki m tra giá tr ể ứ ể ể ể ị
c a bi n đi u khi n xem còn ti p t c l p ủ ế ề ể ế ụ ặ
hay k t thúc. Bi u th c ki m tra th ng là ế ể ứ ể ườ
bi u th c logic có giá tr đúng ho c sai, khi ể ứ ị ặ
có giá tr đúng thì v n l p, khi có giá tr sai ị ẫ ặ ị
thì k t thúc.ế
Bi u th c tăng/gi m dùng đ thay đ i bi n ể ứ ả ể ổ ế
đi u khi n theo chi u tăng ho c gi m.ề ể ề ặ ả
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 28
III.1. L nh l p v i s l n xác đ nh for (ti p)ệ ặ ớ ố ầ ị ế
L u đ th c hi n l nh ư ồ ự ệ ệ
for nh bên:ư
Ba bi u th c trong ể ứ
l nh for có th không ệ ể
có nh ng hai d u ư ấ
ch m ph y không th ấ ẩ ể
thi u. Khi không vi t ế ế
bi u th c ki m tra thì ể ứ ể
m c đ nh bi u th c ặ ị ể ứ
ki m tra có giá tr true, ể ị
đi u này làm cho vòng ề
l p l p mãi.ặ ặ
L nh ti p theoệ ế
Bi u th c kh i ể ứ ở
t oạ
Bi u th c ể ứ
ki m traể
Các l nh c a ệ ủ
vòng l pặ
Bi u th c ể ứ
tăng/gi mả
Đúng
Sai
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 29
III.1. L nh l p v i s l n xác đ nh for (ti p)ệ ặ ớ ố ầ ị ế
Ví d :ụ
for (i=1;i<=10;i++)
printf(“%d\n”,i);
for (i=10;i<=20;i+=2)
{
printf(“%d”,i);
printf(“\n”);
}
Không có d u ấ
ch m ph yấ ẩ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 30
III.1. L nh l p v i s l n xác đ nh for (ti p)ệ ặ ớ ố ầ ị ế
Ví d 4.3: vdc43.cụ
Vi t ch ng trình tính g n đúng s ế ươ ầ ố theo công
th c sau (v i n s h ng đ u tiên):ứ ớ ố ạ ầ
BTVN: 1) Tính S = 1 + 2 + 3 + + N (tính theo
ph ng pháp c ng d n)ươ ộ ồ
2) Tính n!
12
)1(...
7
1
5
1
3
11
4
n
n
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 31
III.2. L nh l p v i s l n l p không xác đ nhệ ặ ớ ố ầ ặ ị
L nh l p ki m tra đi u ki n tr c whileệ ặ ể ề ệ ướ
while (Bi u th c ki m tra)ể ứ ể
Câu l nh;ệ
Không có d u ấ
ch m ph yấ ẩ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 32
III.2. L nh l p v i s l n l p không xác đ nh (ti p)ệ ặ ớ ố ầ ặ ị ế
L u đ th c hi n l nh whileư ồ ự ệ ệ
Bi u th c ể ứ
ki m traể
Các l nh c a ệ ủ
vòng l pặ
Đúng
Sai
L nh ti p ệ ế
theo
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 33
III.2. L nh l p v i s l n l p không xác đ nh (ti p)ệ ặ ớ ố ầ ặ ị ế
L nh l p ki m tra đi u ki n sau do-whileệ ặ ể ề ệ
do
Câu l nh;ệ
while (Bi u th c ki m tra);ể ứ ể
Không có d u ấ
ch m ph yấ ẩ
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 34
III.2. L nh l p v i s l n l p không xác đ nh (ti p)ệ ặ ớ ố ầ ặ ị ế
L u đ th c hi n l nh do whileư ồ ự ệ ệ
Bi u th c ể ứ
ki m traể
Các l nh c a ệ ủ
vòng l pặ
Đúng
Sai
L nh ti p ệ ế
theo
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 35
III.2. L nh l p v i s l n l p không xác đ nh (ti p)ệ ặ ớ ố ầ ặ ị ế
Ví d :ụ vdc44.c
Vi t ch ng trình tính eế ươ x theo công th c:ứ
V i đ chính xác 0.00001, t c là ta c n ch n n sao ớ ộ ứ ầ ọ
cho
BTVN: Làm l i bài tính g n đúng s PI v i đ ạ ầ ố ớ ộ
chính xác 10-4.
...
!
...
!2!1
1
2
n
xxxe
n
x
00001.0
!
n
xn
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 36
IV. L nh break và continueệ
L nh break đ c dùng đ thoát kh i l nh for, ệ ượ ể ỏ ệ
while, do-while và switch. N u các l nh này ế ệ
l ng nhau thì l nh break thoát kh i l nh bên ồ ệ ỏ ệ
trong nh t ch a nó.ấ ứ
V i l nh break ta có th thoát kh i vòng l p ớ ệ ể ỏ ặ
t m t đi m b t kỳ bên trong vòng l p mà ừ ộ ể ấ ặ
không dùng đ n đi u ki n k t thúc vòng l p.ế ề ệ ế ặ
Ví d :ụ Vi t ch ng trình nh p vào m t s ế ươ ậ ộ ố
nguyên d ng, cho bi t s này có ph i là s ươ ế ố ả ố
nguyên t không?ố
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 37
IV. L nh break và continueệ
L nh continue ch dùng v i các l nh l p for, ệ ỉ ớ ệ ặ
while và do-while.
L nh continue không làm thoát kh i l nh l p ệ ỏ ệ ặ
mà làm cho l nh l p b qua các l nh sau l nh ệ ặ ỏ ệ ệ
continue đ th c hi n vòng l p ti p theo.ể ự ệ ặ ế
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 38
L nh continue (ti p)ệ ế
Tác đ ng c a ộ ủ
l nh continue đ i ệ ố
v i l nh for.ớ ệ
Bi u th c kh i ể ứ ở
t oạ
Bi u th c ể ứ
ki m traể
L nh 1;ệ
L nh 2;ệ
continue;
L nh N;ệ
Bi u th c ể ứ
tăng/gi mả
Đúng
Sai
L nh ti p theoệ ế
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 39
L nh continue (ti p)ệ ế
Tác đ ng c a ộ ủ
l nh continue đ i ệ ố
v i l nh while.ớ ệ
Bi u th c ể ứ
ki m traể
L nh 1;ệ
L nh 2ệ
continue;
L nh N;ệ
Đúng
Sai
L nh ệ
ti p theoế
Bài gi ng Ngôn ng C - Ch ng 4 - GV. Ngô Công Th ngả ữ ươ ắ 40
L nh continue (ti p)ệ ế
Tác đ ng c a l nh ộ ủ ệ
continue đ i v i ố ớ
l nh do-while.ệ
Bi u th c ể ứ
ki m traể
L nh 1;ệ
L nh 2;ệ
continue;
L nh N;ệ
Đúng
Sai
L nh ti p ệ ế
theo
Các file đính kèm theo tài liệu này:
- bai_giang_lap_trinh_c_chuong_4_lenh_vara_du_lieu_va_cac_cau.pdf