Câc lệnh điều khiển rẽ nhânh

Một phần của tài liệu Giáo trình Cơ sở lập trình: Phần 1 (Trang 57 - 61)

X , In ra kiểu số nguyín viết dưới dạng sổ hexa (cơ số 16)

2.3.3. Câc lệnh điều khiển rẽ nhânh

2.3.3.1. if...else

Cấu trúc rẽ nhânh if... else được thực hiện trong trường hợp khi cần phải có sự lựa chọn thực hiện lệnh dựa trín việc kiểm tra điều kiện của một biểu thức. Nếu thỏa mên điều kiện thì chương trình thực hiện một hoặc một số cơng việc (mơ tă sau biểu thức điều kiện) cịn ngược lại thì

chương trình sẽ thực hiện một (hoặc câc) cđu lệnh nằm sau từ khóa else.

Cú phâp

Có thể chia thănh 2 dạng như sau

if <điều kiện> { // khối lệnhl } else { // khối lệnh 2 }

Sự hoạt động

Nếu biểu thức điều kiện lă đúng (có giâ trị khâc 0) thì thực hiện khối lệnh 1. Nếu biểu thức điều kiện lă sai (có giâ trị bằng 0) thì thực hiện

khối lệnh 2.

Ví dụ 2.3.3

if ((b!=0) &&(a%b=0)) {

printf(“%d chia hết cho %d”,a,b);

}

else {

printf(“%d không chia hết cho %d”,a,b);

}

Ví dụ trín kiểm tra nếu b khâc 0 vă a chia hết cho b thì in ra dịng

chữ a chia hết cho b. Ngược lại thì in ra dịng chữ a khơng chia hết cho b.

Chỉ một trong hai nhânh được thực hiện. Trong ví dụ trín, cấu trúc của rẽ

nhânh được thể hiện với đăy đủ cả hai nhânh của điều kiện. Tuy nhiín,

trong nhiều trường hợp, nhânh else có thể bị khuyết, khi đó cú phâp của

cđu lệnh if như sau:

Cú phâp

if(biểu thức điều kiện) {

// khối lệnh

}

Sự hoạt động: Nếu biểu thức điều kiện lă đúng thì thực hiện khối

lệnh. Như vậy chỉ khi năo biểu thức điều kiện trín frả về giâ trị khâc 0 thì

khối lệnh trong cặp {} mới được thực hiện.

Ví dụ 2.3.4

{

printf(“%d chia hết cho %d”,a,b); }

Nếu b khâc 0 vă a chia hết cho b thì in ra dịng chữ a chia hết cho b. Chú ý: Ngơn ngữ c cũng cho phĩp có nhiều cấu trúc if...else lồng

nhau.

Ví dụ 2.3.5.

if(x>0)

{

printf(“%d lă số dương” ,x); } else if(x<0) { printf(“%d lă số đm”,x); }

else printf (“Day la so 0”);

Ví dụ trín sẽ kiểm tra nếu X lớn hơn 0 thì in ra dòng “x lă số dương”.

Ngược lại nếu X nhỏ hơn 0 thì in ra dịng “x lă số đm”. Cịn lại thì in ra dịng “Day la so 0”. Như vậy trong câc khối lệnh sau if vă sau else không hạn chế số lượng cấu trúc if...else. Neu sau biểu thức if hoặc lă else có

nhiều hơn một cđu lệnh thì bắt buộc phải sử dụng cặp {}, cịn chỉ có một cđu lệnh thì khơng cần phải sử dụng cặp { }. Tuy nhiín, có thể vẫn sử dụng {} cho một cđu lệnh để dễ phđn biệt vă khơng gặp khó khăn khỉ

muốn thím nhiều dịng lệnh văo trong câc khối lệnh của if hoặc else.

Ví dụ 2.3.6: Nhập hai số nguyín a, b từ băn phím, in số lớn nhất ra

măn hình.

#include<stdio.h> #include<conio.h>

int main 0 {

int a, b;

printf(“Nhap so thu nhat:”); scanf(“%d”, &a);

printf(“Nhap so thu hai:”);

scanf(“%d”, &b);

if(a>b) printf(“\n So lon nhat la: %d”,a);

else printf(“\n So lon nhat la: %d”,b); getch();

return 1;

}

Ví dụ 2.3.7: Nhập văo 3 số dương a, b, c. Kiểm tra xem ba sổ đó cỏ

thoă mên lă 3 cạnh cùa một tam giâc hay không. Điều kiện kiểm ưa lă một số bất kì sẽ nhỏ hơn tổng hai số còn lại vă lớn hơn giâ ưị tuyệt đổi

của hiệu hai sổ còn lại. #include <stdio.h> #include <conio.h> #include <math.h> int main 0 { int a, b,c;

printf("Nhap so thu nhat:");

scanf("%d", &a);

printf("Nhap so thu hai:"); scanf("%d", &b);

printf("Nhap so thu ba:"); scanf("%d", &c);

if ((a+b>c)&&(a+ob)&&(c+b>a))

printf("\n Day la ba canh mot tam giac");

else printf("\n Day khong phai la ba canh mot tam giac");

getchO; return 1; }

Một phần của tài liệu Giáo trình Cơ sở lập trình: Phần 1 (Trang 57 - 61)

Tải bản đầy đủ (PDF)

(77 trang)