Bài giảng Hệ thống máy tính và ngôn ngữ C - Chương 8: Các lệnh điều khiển và vòng lặp
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.1 Leänh ñôn vaø leänh phöùc
8.2 Leänh IF
8.9 Leänh GOTO
8.10 Leänh ROÃNG
Baøi taäp cuoái chöông
8.3 Leänh SWITCH-CASE
8.4 Leänh WHILE
8.5 Leänh DO-WHILE
8.6 Leänh FOR
8.7 Leänh BREAK vaø leänh
CONTINUE
8.8 Leänh RETURN
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.1 LEÄNH ÑÔN VAØ LEÄNH PHÖÙC
(SIMPLE STATEMENT VAØ COMPOUND
STATEMENT)
- Leänh ñôn laø moät bieåu thöùc thuoäc loaïi baát kyø theo sau noù
laø moät daáu chaám phaåy (;), do ñoù leänh ñôn coøn ñöôïc goïi laø
leänh bieåu thöùc.
Ví duï: Caùc leänh sau ñaây laø caùc leänh ñôn
a = a + 1;
b >>= 3;
printf (...);
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.1 LEÄNH ÑÔN VAØ LEÄNH PHÖÙC
(SIMPLE STATEMENT VAØ COMPOUND
STATEMENT)
-Leänh phöùc bao haøm moät hay nhieàu leänh ñôn ñöôïc bao beân
trong caëp daáu ngoaëc nhoïn ({ }) vaø ñöôïc boä dòch C xem nhö
laø moät leänh ñôn.
Ví duï: Xeùt leänh if sau
if (a > 0)
{
i += 2;
a++;
n = a * i;
leänh phöùc,ñöôïc xem laømoät leänh
}
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.1 LEÄNH ÑÔN VAØ LEÄNH PHÖÙC
(SIMPLE STATEMENT VAØ COMPOUND
STATEMENT)
Caùc leänh ñieàu khenøcoeå öôïchia ra laøm hai
nhoùm:
- Nhoùm leänh lieân quan ñeán vieäc reõ nhaùnh chöông trình: if-
else, switch-case, goto,...
- Nhoùm leänh laëp: while, for, do_while
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.2 LEÄNH IF
Leänh if cho pheùp laäp trình vieân thöïc hieän moät leänh ñôn
hay moät leänh phöùc tuøy theo bieåu thöùc ñieàu kieän, neáu bieåu
thöùc coù trò khaùc 0 thì leänh ñöôïc thöïc thi.
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.2 LEÄNH IF
Daïng 1:
if (bieu_thuc)
leänh;
- bieåu_thöùc laø moät bieåu thöùc baát kyø, coù
theå coù haèng, bieán hoaëc goïi haøm trong ñoù
vaø sau cuøng laø beu hc naøsecù trò 0
hoaëc 1
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.2 LEÄNH IF
Daïng 1:
if (bieu_thuc)
leänh;
- leänh laø leänh thöïc thi cuûa if, coù theå laø
leänh ñôn, phöùc hoaëc leänh roãng.
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.2 LEÄNH IF
Daïng 2:
if (bieu_thuc)
leänh_1;
else
leänh_2;
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.2 LEÄNH IF
Ví duï: Xeùt chöông trình sau ñaây
#include <stdio.h>
#include <conio.h>
main()
{
int n;
clrscr();
printf (Moi nhap mot so: );
scanf (%d, &n);
if (n % 2 == 0)
;
printf ("Moi ban nhan mot phim de ket thuc \n");
getch();
}
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.2 LEÄNH IF
Ví duï: Xeùt chöông trình sau ñaây
#include <stdio.h>
#include <conio.h>
main()
{
int n; clrscr();
printf ("Moi nhap mot so: "); scanf ("%d", &n);
if (n % 2 == 0)
printf ("So la so chan \n"); vaãn coù daáu chaám
phaåy
else
printf ("So la so le \n");
printf ("Moi ban nhan mot phim de ket thuc \n");
getch();
}
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.2 LEÄNH IF
Ví duï: Xeùt chöông trình sau ñaây
if (a > 0)
if (a > 0)
if (b > 0)
c = b + a;
else
{
if (b > 0)
c = b –
c = b – a;
}
else
c = b – a;
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.2 LEÄNH IF
Khi thöïc hieän leänh if_else loàng
nhau nhö theá naøy caùc bieåu thöùc
seõ ñöôïc tính laàn löôït töø treân
xuoáng döôùi neáu coù bieåu thöùc
naøo khaùc 0, leänh töông öùng vôùi
if ñoù seõ ñöôïc thi haønh vaø toaøn
boä phaàn coøn laïi cuûa leänh if-else
ñöôïc boû qua.
if (bieåu_thöùc_1)
lenh_1;
else if (bieåu_thöùc_2)
lenh_2;
else if (bieåu_thöùc_3)
lenh_3;
......
else
lenh_n;
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.2 LEÄNH IF
Ví duï: Chöông trình ví duï sau nhaäp vaøo moät kyù töï, kieåm
tra kyù töï ñoù laø thöôøng, hoa, kyù soá hoaëc kyù töï keát thuùc file
hay kyù töï khaùc.
#include <stdio.h>
#include <conio.h>
main()
{
char c;
clrscr();
printf ("Nhap mot ky tu: ");
c = getchar();
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.2 LEÄNH IF
if (c == EOF)
printf ("Da den cuoi file \n");
else if (c >= 'a' && c <= 'z')
printf ("ky tu thuong\n");
else if (c >= 'A' && c <= 'Z')
printf ("ky tu hoa\n");
else if (c >= '0' && c <= '9')
printf ("ky tu so\n");
else
printf ("ky tu khac\n");
getch();
}
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.3 LEÄNH SWITCH-CASE
switch (bieåu_thöùc)
:
{
case haèng_n:
leänh_n;
break;
case haèng_1:
leänh_1;
break;
default:
leänh;
case haèng_2:
leänh_2;
break;
break;
}
:
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.3 LEÄNH SWITCH-CASE
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.3 LEÄNH SWITCH-CASE
Ví duï: Vieát chöông trình nhaäp moät trò, neáu trò ñoù chia heát
cho 5 thì coäng theâm 5 vaøo cho soá ñoù, neáu trò ñoù chia cho 5
dö 1 thì coäng theâm 1, töông töï cho 3, neáu laø soá khaùc thì
baùo khoâng thoûa.
#include <stdio.h>
#include <conio.h>
main()
{
int so;
clrscr();
printf ("Nhap mot so: ");
scanf ("%d", &so);
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.3 LEÄNH SWITCH-CASE
switch (so % 5)
{
case 0:
so += 5;
printf ("Tri la: %d\n", so);
break;
case 1:
so += 1
printf ("Tri la: %d\n", so);
break;
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.3 LEÄNH SWITCH-CASE
case 3:
so += 3;
printf ("Tri la: %d\n", so);
break;
default:
prnf (Khong thoa\n");
break;
}
getch();
}
CHÖÔNG 8
CAÙC LEÄNH ÑIEÀU KHIEÅN VAØ VOØNG LAËP
8.3 LEÄNH SWITCH-CASE
Leänh break cuoái moãi case seõ chuyeån ñieàu khieån chöông
trình ra khoûi leänh switch. Neáu khoâng coù break, caùc leänh
tieáp ngay sau seõ ñöôïc thöïc thi duø caùc leänh naøy coù theå laø
cuûa moät case khaùc.
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Hệ thống máy tính và ngôn ngữ C - Chương 8: Các lệnh điều khiển và vòng lặp", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
- bai_giang_he_thong_may_tinh_va_ngon_ngu_c_chuong_8_cac_lenh.pdf