Bài giảng Nhập môn tin học - Bài 3: Các cấu trúc điều khiển - Đào Nam Anh

CÁC CẤU TRÚC ĐIỀU KHIỂN

GIỚI THIỆU

 Cấu trúc lựa chọn

 Câu lệnh if

 Câu lệnh if – else

 Câu lệnh với nhiều lệnh if

 Câu lệnh if lồng nhau

 Câu lệnh switch.

 Vòng lặp

 Vòng lặp „for‟ trong C

 Toán tử „phẩy‟

 Vòng lặp lồng nhau

 Vòng lặp „while‟ và vòng lặp „do-while‟

 Lệnh nhẩy

 Các lệnh „break‟, „continue‟ và „goto‟

 Hàm „exit()

pdf126 trang | Chia sẻ: phuongt97 | Lượt xem: 503 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Bài giảng Nhập môn tin học - Bài 3: Các cấu trúc điều khiển - Đào Nam Anh, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
for (j=1; j<=5; j++) printf("%d ", j); printf("\n"); } } 93 Qúa trình thực hiện vòng lặp ở đây như sau: 1. Khởi tạo giá trị cho biến điều khiển vòng lặp ngoài cùng: i = 1. 2. Kiểm tra biểu thức điều kiện vòng lặp ngoài cùng (i <= 10)? Do giá trị hiện tại của i = 1 nên biểu thức điều kiện này nhận giá trị đúng và khối lệnh trong thân vòng lặp được thực hiện. 3. Thân của vòng lặp này chứa một vòng lặp nữa (biến j) và lệnh xuống dòng printf("%d\n", i). Thực hiện vòng lặp bên trong hoàn toàn tương tự như vòng lặp bên ngoài. Vòng lặp này sẽ thực hiện 5 lần với giá trị của j thay đổi từ 1 đến 5. Khi j tăng lên 6, mỗi lần thực hiện sẽ in ra màn hình giá trị tương ứng của j. Do giá trị này lớn hơn 5 nên vòng lặp trong kết thúc. Lệnh xuống dòng được thực hiện . Sau đó, thực hiện vòng lặp bên ngoài. CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp for.Ví dụ Chương trình sau đây sẽ in ra 10 hàng, mỗi hàng gồm 5 chữ số từ 1 đến 5: int main() { int i, j; for (i = 1; i<=10; i++){ for (j=1; j<=5; j++) printf("%d ", j); printf("\n"); } } 94 Qúa trình thực hiện vòng lặp ở đây như sau: 1. Khởi tạo giá trị cho biến điều khiển vòng lặp ngoài cùng: i = 1. 2. Kiểm tra biểu thức điều kiện vòng lặp ngoài cùng (i <= 10)? Do giá trị hiện tại của i = 1 nên biểu thức điều kiện này nhận giá trị đúng và khối lệnh trong thân vòng lặp được thực hiện. 3. Thân của vòng lặp này chứa một vòng lặp nữa (biến j) và lệnh xuống dòng printf("%d\n", i). Thực hiện vòng lặp bên trong hoàn toàn tương tự như vòng lặp bên ngoài. Vòng lặp này sẽ thực hiện 5 lần với giá trị của j thay đổi từ 1 đến 5. Khi j tăng lên 6, mỗi lần thực hiện sẽ in ra màn hình giá trị tương ứng của j. Do giá trị này lớn hơn 5 nên vòng lặp trong kết thúc. Lệnh xuống dòng được thực hiện . Sau đó, thực hiện vòng lặp bên ngoài. 4. Biểu thức thay đổi giá trị của biến điều khiển i++, tăng giá trị của biến i lên 1 cho lần lặp kế tiếp. CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp for.Ví dụ Chương trình sau đây sẽ in ra 10 hàng, mỗi hàng gồm 5 chữ số từ 1 đến 5: int main() { int i, j; for (i = 1; i<=10; i++){ for (j=1; j<=5; j++) printf("%d ", j); printf("\n"); } } 95 Qúa trình thực hiện vòng lặp ở đây như sau: 1. Khởi tạo giá trị cho biến điều khiển vòng lặp ngoài cùng: i = 1. 2. Kiểm tra biểu thức điều kiện vòng lặp ngoài cùng (i <= 10)? Do giá trị hiện tại của i = 1 nên biểu thức điều kiện này nhận giá trị đúng và khối lệnh trong thân vòng lặp được thực hiện. 3. Thân của vòng lặp này chứa một vòng lặp nữa (biến j) và lệnh xuống dòng printf("%d\n", i). Thực hiện vòng lặp bên trong hoàn toàn tương tự như vòng lặp bên ngoài. Vòng lặp này sẽ thực hiện 5 lần với giá trị của j thay đổi từ 1 đến 5. Khi j tăng lên 6, mỗi lần thực hiện sẽ in ra màn hình giá trị tương ứng của j. Do giá trị này lớn hơn 5 nên vòng lặp trong kết thúc. Lệnh xuống dòng được thực hiện . Sau đó, thực hiện vòng lặp bên ngoài. 4. Biểu thức thay đổi giá trị của biến điều khiển i++, tăng giá trị của biến i lên 1 cho lần lặp kế tiếp. 5. Lặp lại các bước 2, 3, 4 cho đến khi biểu thức điều kiện là sai. CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Các trường hợp khác của vòng lặp for:  Vòng lặp for có thể được sử dụng mà không cần phải có đầy đủ các thành phần của nó. Ví dụ: . . . for (i = 1; i!= 10;) { printf(“Input i = “); scanf(“%d”,&i); . . . }  Đoạn mã trên sẽ yêu cầu nhập giá trị cho biến i, vòng lặp không có phần thay đổi giá trị của biến điều khiển và sẽ kết thúc khi biến i có giá trị 10. 96 CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Các trường hợp khác của vòng lặp for:  Một dạng khác, vòng lặp for có thể thiếu phần khởi tạo giá trị cho biến điều khiển vòng lặp như sau: printf("Input i = "); scanf("%d", &i); for(; i < 10; ) { printf("%d ", i); i++; }  Vòng lặp trên không có phần khởi tạo tham số và phần thay đổi giá trị của tham số i. Tuy nhiên, giá trị của i đã được thay đổi trong thân vòng lặp để tránh trường hợp lặp vô n. 97 CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Các trường hợp khác của vòng lặp for:  Vòng lặp for khi không có bất kỳ thành phần nào sẽ là một vòng lặp vô n. for ( ; ; ) { . . . }  Tuy nhiên, lệnh break bên trong vòng lặp sẽ cho phép thoát khỏi vòng lặp. for ( ; ; ) { ch = getchar(); if (ch == „E‟ || i == „e‟); break; }  Vòng lặp trên sẽ được thực hiện cho đến khi người dùng nhập vào E hoặc e. 98 CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Các trường hợp khác của vòng lặp for:  Vòng lặp for (hay vòng lặp bất k ) có thể không có bất k lệnh nào trong phần thân của nó. K thuật này giúp tăng tính hiệu quả trong một vài giải thuật và để tạo ra độ trễ về mặt thời gian. Chẳng hạn có thể tạo ra một độ trễ trong khoảng thời gian MAX_TIME như sau: for (i = 0; i < MAX_TIME; i++); 99 CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp while  Cú pháp tổng quát như sau: while (điều_kiện là đúng) câu_lệnh; 100 CNTT Nhập môn tin học CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp while  Cú pháp tổng quát như sau: while (điều_kiện là đúng) câu_lệnh;  Trong đó, câu_lệnh có thể là rỗng, hay một lệnh đơn, hay một khối lệnh.  Nếu vòng lặp while chứa một tập các lệnh thì chúng phải được đặt trong cặp ngoặc n { }. điều_kiện có thể là biểu thức bất kỳ.  Vòng lặp sẽ được thực hiện lặp đi lặp lại khi điều kiện trên là đúng (true). Chương trình sẽ chuyển đến thực hiện lệnh tiếp sau vòng lặp khi điều kiện trên là sai (false). 101 CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp while.Ví dụ Chương trình ví dụ sau đây cho phép người dùng nhập liên tục các số nguyên bất kỳ từ bàn phím. Việc nhập sẽ kết thúc khi người dùng nhập vào số 0. void main() { int x; printf("Input a number: "); scanf("%d", &x); while (x!=0){ printf("%d\n",x); printf("Input a next number: "); scanf("%d", &x); } getch(); } 102 CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp while.Ví dụ Chương trình ví dụ sau đây cho phép người dùng nhập liên tục các số nguyên bất kỳ từ bàn phím. Việc nhập sẽ kết thúc khi người dùng nhập vào số 0. void main() { int x; printf("Input a number: "); scanf("%d", &x); while (x!=0){ printf("%d\n",x); printf("Input a next number: "); scanf("%d", &x); } getch(); } 103 1. Đầu tiên chương trình yêu cầu người dùng nhập vào một số. 2. Nếu người dùng nhập vào số 0 thì biểu thức điều kiện (x!=0) nhận giá trị sai, vòng lặp while sẽ kết thúc và không thực hiện lần nào. CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp while.Ví dụ Chương trình ví dụ sau đây cho phép người dùng nhập liên tục các số nguyên bất kỳ từ bàn phím. Việc nhập sẽ kết thúc khi người dùng nhập vào số 0. void main() { int x; printf("Input a number: "); scanf("%d", &x); while (x!=0){ printf("%d\n",x); printf("Input a next number: "); scanf("%d", &x); } getch(); } 104 1. Đầu tiên chương trình yêu cầu người dùng nhập vào một số. 2. Nếu người dùng nhập vào số 0 thì biểu thức điều kiện (x!=0) nhận giá trị sai, vòng lặp while sẽ kết thúc và không thực hiện lần nào. 3. Ngược lại, nếu người dùng nhập vào số khác 0 thì biểu thức điều kiện nhận giá trị đúng và khối lệnh trong thân vòng lặp được thực hiện. 4. Trước tiên printf("%d\n",x)sẽ in giá trị của số đã nhập ra màn hình sau đó yêu cầu người dùng nhập vào số tiếp theo. CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp while.Ví dụ Chương trình ví dụ sau đây cho phép người dùng nhập liên tục các số nguyên bất kỳ từ bàn phím. Việc nhập sẽ kết thúc khi người dùng nhập vào số 0. void main() { int x; printf("Input a number: "); scanf("%d", &x); while (x!=0){ printf("%d\n",x); printf("Input a next number: "); scanf("%d", &x); } getch(); } 105 1. Đầu tiên chương trình yêu cầu người dùng nhập vào một số. 2. Nếu người dùng nhập vào số 0 thì biểu thức điều kiện (x!=0) nhận giá trị sai, vòng lặp while sẽ kết thúc và không thực hiện lần nào. 3. Ngược lại, nếu người dùng nhập vào số khác 0 thì biểu thức điều kiện nhận giá trị đúng và khối lệnh trong thân vòng lặp được thực hiện. 4. Trước tiên printf("%d\n",x)sẽ in giá trị của số đã nhập ra màn hình sau đó yêu cầu người dùng nhập vào số tiếp theo. 5. Sau khi người dùng nhập xong, sẽ quay lại kiểm tra biểu thức điều kiện, nếu đúng vòng lặp tiếp tục được thực hiện, nếu sai vòng lặp kết thúc và lệnh getch()sau vòng lặp sẽ được thực hiện. 6. Lặp lại các bước 2, 3, 4 cho đến khi biểu thức điều kiện là sai. CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp while.Ví dụ Chương trình ví dụ sau đây cho phép người dùng nhập liên tục các số nguyên bất kỳ từ bàn phím. Việc nhập sẽ kết thúc khi người dùng nhập vào số 0. void main() { int x; printf("Input a number: "); scanf("%d", &x); while (x!=0){ printf("%d\n",x); printf("Input a next number: "); scanf("%d", &x); } getch(); } 106  Giống như vòng lặp for, vòng lặp while kiểm tra điều kiện ngay khi bắt đầu thực hiện vòng lặp. Do đó các lệnh trong thân vòng lặp sẽ không được thực hiện nếu ngay từ ban đầu điều kiện đó là sai.  Biểu thức điều kiện trong vòng lặp có thể phức tạp tùy theo yêu cầu của bài toán.  Các biến trong biểu thức điều kiện có thể bị thay đổi giá trị trong thân vòng lặp, nhưng cuối cùng điều kiện đó phải sai (false) nếu không vòng lặp sẽ không bao giờ kết thúc. CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp while.Ví dụ Sau đây là ví dụ về một vòng lặp while vô hạn. void main() { int i = 1; while (i < 10){ printf("\n This is iteration %d\n", i); } getch(); } 107  Giá trị i luôn luôn có giá trị bằng 1 và vì vậy biểu thức điều kiện luôn trả về giá trị đúng. Do vậy vòng lặp không bao giờ kết thúc. CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp while.Ví dụ Sau đây là ví dụ về một vòng lặp while vô hạn. void main() { int i = 1; while (i < 10){ printf("\n This is iteration %d\n", i); } getch(); } 108  Giá trị i luôn luôn có giá trị bằng 1 và vì vậy biểu thức điều kiện luôn trả về giá trị đúng. Do vậy vòng lặp không bao giờ kết thúc.  Có thể khắc phục điều này một cách đơn giản bằng cách bổ sung thêm biểu thức thay đổi giá trị của biến điểu khiển vòng lặp như sau: void main() { int i = 1; while (i < 10){ printf("\n This is iteration %d\n", i); i++; } getch(); } CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp while.Ví dụ Nếu có hơn một điều kiện được kiểm tra để kết thúc vòng lặp, vòng lặp sẽ kết thúc khi có ít nhất một điều kiện trong các điều kiện đó là false. Ví dụ sau sẽ minh họa điều này. #include main() { int i, j; i = 0; j = 10; while (i 5) { ... i++; j -= 2; } ... } 109  Vòng lặp này sẽ thực hiện 3 lần, lần lặp thứ nhất j sẽ là 10, lần lặp kế tiếp j bằng 8 và lần lặp thứ ba j sẽ bằng 6.  Khi đó i vẫn nhỏ hơn 100 ( i bằng 3), j nhận giá trị 4 và điều kiện j > 5 trở thành false, vì vậy vòng lặp kết thúc. CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp do...while  Vòng lặp do ... while còn được gọi là vòng lặp do trong C.  Không giống như vòng lặp for và while, vòng lặp này kiểm tra điều kiện tại cuối vòng lặp.  Điều này có nghĩa là vòng lặp do ... while sẽ được thực hiện ít nhất một lần, ngay cả khi điều kiện là sai (false) ở lần chạy đầu tiên. 110 CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp do...while do{ câu_lệnh; } while (điều_kiện); • Cặp dấu ngoặc n {} là không cần thiết khi chỉ có một câu lệnh hiện diện trong vòng lặp, nhưng việc sử dụng p dấu ngoặc n {} là một thói quen tốt. • Vòng lặp do ... while lặp đến khi điều_kiện mang giá trị false. Trong vòng lặp do ... while, câu_lệnh (khối các câu lệnh) sẽ được thực thi trước, và sau đó điều_kiện được kiểm tra. • Nếu điều kiện là true, chương trình sẽ quay lại thực hiện lệnh do. Nếu điều kiện là false, chương trình chuyển đến thực hiện lệnh nằm sau vòng lặp. 111 CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp do..while.Ví dụ #include #include main() { int val; do { printf("Please enter a number between 1 and 10: "); scanf("%d",&val); if(val10) printf("The number is not between 1 and 10.\n"); }while(val10); printf("You entered a %d.",val); getch(); return 0; } 112  Đoạn chương trình trên yêu cầu người dùng nhập số bất kỳ từ bàn phím, nếu số đó nằm ngoài khoảng 1..10 (có nghĩa là nhỏ hơn 1 hoặc lớn hơn 10) thì yêu cầu nhập lại. CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Vòng lặp do..while.Ví dụ #include #include main() { int val; do { printf("Please enter a number between 1 and 10: "); scanf("%d",&val); if(val10) printf("The number is not between 1 and 10.\n"); }while(val10); printf("You entered a %d.",val); getch(); return 0; } 113  Đoạn chương trình trên yêu cầu người dùng nhập số bất kỳ từ bàn phím, nếu số đó nằm ngoài khoảng 1..10 (có nghĩa là nhỏ hơn 1 hoặc lớn hơn 10) thì yêu cầu nhập lại.  Kết quả thực hiện của chương trình này như sau: Please enter a number between 1 and 10: 11 The number is not between 1 and 10. Please enter a number between 1 and 10: 12 The number is not between 1 and 10. Please enter a number between 1 and 10: 0 The number is not between 1 and 10. Please enter a number between 1 and 10: 2 You entered a 2. u CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Các vòng lặp „while lồng nhau‟ và „do ... while‟ int main(){ char x, c; printf("Enter a character: "); scanf("%c", &c); printf("Character entered: %c\n", c); fflush(stdin); printf("Enter more characters (Y/N)?"); scanf("%c", &x); fflush(stdin); while (x == 'Y' || x == 'y'){ do{ printf("Enter a character: "); scanf("%c", &c); fflush(stdin); printf("Character entered: %c\n", c); }while (c != 'E' && c != 'e'); printf("Enter more characters (Y/N)?"); scanf("%c", &x); fflush(stdin); } } 114  Chương trình trên yêu cầu người dùng nhập vào một k tự bất kỳ.  Sau khi nhập, chương trình sẽ hỏi người dùng có muốn nhập tiếp k tự khác hay không (Y/N)?  Nếu trả lời „n‟ hoặc „N‟, chương trình kết thúc.  Nếu trả lời „y‟ hoặc „Y‟ , sẽ cho phép người dùng nhập liên tục các k tự cho đến khi người dùng nhập vào kí tự „e‟ hoặc „E‟.  Lúc này, chương trình sẽ hỏi lại người dùng có muốn nhập k tự không và lặp lại các bước thực hiện như trên. u CÁC CẤU TRÚC ĐIỀU KHIỂN 2. NG P Các vòng lặp „while lồng nhau‟ và „do ... while‟ int main(){ char x, c; printf("Enter a character: "); scanf("%c", &c); printf("Character entered: %c\n", c); fflush(stdin); printf("Enter more characters (Y/N)?"); scanf("%c", &x); fflush(stdin); while (x == 'Y' || x == 'y'){ do{ printf("Enter a character: "); scanf("%c", &c); fflush(stdin); printf("Character entered: %c\n", c); }while (c != 'E' && c != 'e'); printf("Enter more characters (Y/N)?"); scanf("%c", &x); fflush(stdin); } } 115  Kết quả thực hiện của đoạn chương trình trên như sau: Enter a character: b Character entered: b Enter more characters (Y/N)? y Enter a character:c Character entered:c Enter a character:e Character entered:c Enter more characters (Y/N)? n u CÁC CẤU TRÚC ĐIỀU KHIỂN 3. C NH Y  C có bốn câu lệnh thực hiện sự rẽ nhánh không điều kiện: return, goto, break, và continue.  Sự rẽ nhánh không điều kiện nghĩa là sự chuyển điều khiển từ một điểm đến một lệnh xác định.  Trong các lệnh chuyển điều khiển trên, return và goto có thể dùng bất kỳ vị trí nào trong chương trình, trong khi lệnh break và continue được sử dụng kết hợp với các câu lệnh vòng lặp. 116 CNTT Nhập môn tin học Lệnh break Câu lệnh break có hai cách dùng.  Nó có thể được sử dụng để kết thúc một case trong câu lệnh switch hoặc để kết thúc ngay một vòng lặp, mà không cần kiểm tra điều kiện vòng lặp.  Khi chương trình gặp lệnh break trong một vòng lặp, ngay lập tức vòng lặp được kết thúc và quyền điều khiển chương trình được chuyển đến câu lệnh theo sau vòng lặp. 117 CNTT Nhập môn tin học CÁC CẤU TRÚC ĐIỀU KHIỂN 3. C NH Y Ví dụ 3.16: #include main() { int n,i ; printf("Input n = "); scanf("%d",&n); printf("So vua nhap la: %d\n",n); for (i=n;i>=1;i--) { if (i==5) break; printf("%d ",i) ; } } 118 Đoạn chương trình trên yêu cầu người dùng nhập một số nguyên bất kỳ từ bàn phím (n). Sau đó sẽ in ra dãy số theo thứ tự ngược từ n tới 1. Về nguyên tắc, ng lặp trên sẽ thực hiện n lần. Tuy nhiên, do có câu lệnh: if (i==5) break; nên vòng lặp này sẽ bị kết thúc giữa chừng sau lần lặp thứ 5 (i = 5). u CÁC CẤU TRÚC ĐIỀU KHIỂN 3. C NH Y Ví dụ 3.16: #include main() { int n,i ; printf("Input n = "); scanf("%d",&n); printf("So vua nhap la: %d\n",n); for (i=n;i>=1;i--) { if (i==5) break; printf("%d ",i) ; } } 119  Kết quả thực hiện của chương trình như sau: Input n = 10 So vua nhap la: 10 10 9 8 7 6 u CÁC CẤU TRÚC ĐIỀU KHIỂN 3. C NH Y Lệnh break  Một điểm khác cần lưu ý là việc sử dụng câu lênh break trong các lệnh lặp lồng nhau. Khi chương trình thực thi đến một lệnh break nằm trong một vòng lặp for lồng bên trong một vòng lặp for khác, quyền điều khiển được chuyển trở về vòng lặp for bên ngoài. 120 CNTT Nhập môn tin học CÁC CẤU TRÚC ĐIỀU KHIỂN 3. C NH Y Lệnh continue  Lệnh continue kết thúc lần lặp hiện hành và bắt đầu lần lặp kế tiếp. Khi gặp lệnh này trong chương trình, các câu lệnh còn lại trong thân của vòng lặp được bỏ qua và quyền điều khiển được chuyển đến bước đầu của vòng lặp trong lần lặp kế tiếp.  Trong trường hợp vòng lặp for, continue thực hiện biểu thức thay đổi giá trị của biến điều khiển và sau đó kiểm tra biểu thức điều kiện.  Trong trường hợp của lệnh while và dowhile, quyền điều khiển chương trình được chuyển đến biểu thức kiểm tra điều kiện. 121 CNTT Nhập môn tin học CÁC CẤU TRÚC ĐIỀU KHIỂN 3. C NH Y Ví dụ 3.17: #include #include #include main() { int n,i ; printf("Input n = "); scanf("%d",&n); printf("So vua nhap la:%d\n",n); for (i=1;i<=n;i++) { if (i%2!=0) continue; printf("%d ",i) ; } getch(); } 122 Chương trình trên yêu cầu người dùng nhập vào một số nguyên bất kỳ (n) và in ra mà hình tất cả những số chẵn trong khoảng từ 1 đến n. Tại mỗi bước lặp, nếu điều kiện (i%2!=0) thỏa mãn lệnh continue sẽ được thực hiện. Như vậy, câu lệnh printf("%d ",i)- in giá trị của i ra màn hình sẽ bị bỏ qua và vòng lặp kế tiếp được bắt đầu u CÁC CẤU TRÚC ĐIỀU KHIỂN 3. C NH Y Ví dụ 3.17: #include #include #include main() { int n,i ; printf("Input n = "); scanf("%d",&n); printf("So vua nhap la:%d\n",n); for (i=1;i<=n;i++) { if (i%2!=0) continue; printf("%d ",i) ; } getch(); } 123  Kết quả thực hiện của chương trình trên như sau: Input n = 100 So vua nhap la: 100 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100 u CÁC CẤU TRÚC ĐIỀU KHIỂN 3. C NH Y Lệnh return  Lệnh return dùng để quay lại vị trí gọi hàm sau khi các lệnh trong hàm đó được thực thi xong. Trong lệnh return có thể có một giá trị gắn với nó, giá trị đó sẽ được trả về cho chương trình. return biểu_thức;  Biểu_thức là một tùy chọn (không bắt buộc). Có thể có hơn một lệnh return được sử dụng trong một hàm. Tuy nhiên, hàm sẽ quay trở về vị trí gọi hàm khi gặp lệnh return đầu tiên. : int f(n) { Các công việc.... return giá trị trả về; } 124 CÁC CẤU TRÚC ĐIỀU KHIỂN 3. C NH Y CÁC CẤU TRÚC ĐIỀU KHIỂN TÓM TẮT  Cấu trúc lựa chọn  Câu lệnh if  Câu lệnh if – else  Câu lệnh với nhiều lệnh if  Câu lệnh if lồng nhau  Câu lệnh switch.  Vòng lặp  Vòng lặp „for‟ trong C  Toán tử „phẩy‟  Vòng lặp lồng nhau  Vòng lặp „while‟ và vòng lặp „do-while‟  Lệnh nhẩy  Các lệnh „break‟, „continue‟ và „goto‟  Hàm „exit()‟. 125 Cám ơn https://sites.google.com/site/daonamanhedu/intro2informatics

Các file đính kèm theo tài liệu này:

  • pdfbai_giang_nhap_mon_tin_hoc_bai_3_cac_cau_truc_dieu_khien_dao.pdf