Teya Salat
GamesCapNhat.Wap.Sh
HOME - Lập Trình đồng hồ gỗ ĐỨC PHỔ WAP LẬP TRÌNH
Xem Thêm >>
Lập Trình C

Các Cấu Trúc Điều Khiển Chương Trình C (phần 1)

IV - Các cấu trúc điều khiển chương trình

  M ột chương trình là tập nhiều câu lệnh, thông thường một cách trực quan chúng ta hiểu chương trình thực hiện tuần tự các lệnh từ trên xuống dưới, bắt đầu từ lệnh thứ nhất trong hàm main và kết thúc sau lệnh cuối cùng của nó. Nhưng thực tế chương trình có thể phức tạp hơn sự tuần tự nhiều, chẳng hạn như một câu lệnh (hay khối lệnh) chỉ được thực hiện khi có một điều kiện nào đó đúng, còn ngược lại nó sẽ bị bỏ qua, tức là xuất hiện khả năng lựa chọn một nhánh nào đó. Hay một chức năng nào đó có thể phải lặp lại nhiều lần. Như vậy với một ngôn ngữ lập trình có cấu trúc nói chung phải có các cấu trúc để điều khiển trình tự thực hiện các lệnh trong chương trình (gọi ngắn gọn là các cấu trúc hoặc các toán tử điều khiển)   Sau đây chúng ta sẽ tìm hiểu từng cấu trúc điều khiển chương trình  của C.

 IV.1.  Cấu trúc tuần tự

 Đây là cấu trúc đơn giản nhất của các ngôn ngữ lập trình nói chung, điều khiển thực hiện tuần tự các lệnh trong chương trình (bắt đầu từ các lệnh trong thân hàm main) theo thứ tự từ trên xuống dưới (nếu không có điều khiển nào khác). 

 Ví dụ 1.1: Chương trình nhập năm sinh của một người từ bàn phím,  sau đó in ra lời chào và tuổi của người đó. 

#include <stdio.h>

 #include <conio.h>

 void main){<;

   scanf"; 

printf0;   

getch0,         diện tích s =  sqrt0*0*0)         v ới q = p/2, sqrt là hàm tính căn bậc 2   Chúng ta có chương trình như sau: 

#include <stdio.h>

 #include <conio.h>

 #include <math.h>

 void main){ <;  

 printf("\na = ")

; scanf"; 

 printf("\nb = "); 

scanf";  

 printf("\nc = "); 

scanf";  

 p = a+b+c;

  q = p/2; 

  s = sqrt0*0*0); 

  printf0;     getch);} vídụvềkếtquảthựchiệnchươngtrình  Nhapsodo3canhcuatamgiac  a=3↵  b=4↵  c=5↵  Chuvila12.0,dientichla6.00 <

 IV.2.  Cấu trúc rẽ nhánh

  Chúng ta hãy xem lại chương trình  trong  ví dụ 2 trên, điều gì xảy ra nếu dữ liệu không thoả mãn, tức là khi bạn nhập 3 số a,b,c từ bàn phím nhưng chúng không thoả mãn là số đo 3 cạnh một tam giác trong khi chương trình của chúng ta vẫn cứ tính và in diện tích.  

 Rõ ràng là có hai khả năng:

 − Nếu a,b,c thoả mãn là 3 cạnh tam giác thì tính chu vi, diện tích và in kết quả

 − Ngược lại phải thông báo dữ liệu không phù hợp 

 Như vậy cần phải có một sự lựa một trong hai nhánh tuỳ vào điều kiện a,b,c có là ba cạnh một tam giác hay không. Điều này gọi là rẽ nhánh, và C cung cấp cho chúng ta một cấu trúc điều khiển rẽ nhánh if. ¾ Cú pháp  dạng đủ               

                         if (bt_E) S1;          

            else    

   S2;  

  ho ặc dạng khuyết                  

                if (bt_E)      

   S1;  

Trong cú pháp trên S1, S2 chỉ là 1 lệnh, <bt_E> là biểu thức điều kiện của if Sự hoạt động của cấu trúc if:   Trước hết biểu thức điều kiện <bt_E> được tính, có hai khả năng:  → Nếu giá trị của <bt_E> là ‘đúng’ (!=0) thì S1 được  thực hiện  và ra khỏi cấu trúc if.  → Ngược lại nếu <bt_E> là ‘sai’ thì - với dạng đầy đủ :   thực hiện S2 rồi kết thúc if - với dạng khuyết :   kết thúc cấu trúc  if  

Ví dụ 2.1: chương trình 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 <stdio.h> 

void main){<; 

  scanf“;

  printf(“\nNhap so thu hai :  “); 

  scanf“;

  if (a>b)   printf‘\nSolonnhatla; 

 else    printf‘\nSolonnhatla; 

 getch);< { 

float a,b,c, p,q,s; 

  printf("Nhap so do 3 canh cua tam giac ");

   printf("\na = ");

 scanf"; 

  printf("\nb = ");

 scanf";

   printf("\nc = ");

 scanf";

 if0&&0&&0  

 {   p = a+b+c;  q = p/2;

   s = sqrt0*0*0);

   printf0;

  }  

   else

 printf(“\nBa so da cho la ba canh tam giac”);   

  getch0 à tính nghiệm  x = -b/0. ƒ Ngược lại à Nếu delta   >  0  (phương trình có 2 nghiệm x1,x2 ) − x1 = 0)/0 − x1 = 0)/0 à Ngược lại (delta <  0)   − phương trình không  có thực  

Chương trình giải phương trình bậc 2  

#include <stdio.h

> #include <conio.h>

 #include <math.h>

 void main){ <; 

  scanf";

   delta = b*b-4*a*c;

  if(delta==0)     

  printf0); 

  else 

  if(delta > 0)  { x1 =0)/0;    x2 =0)/0;

    printf0;  

 }  

   else  printf("\nPhuong trinh khong co nghiem thuc");

 }  

<< Bài Viết Khác
Danh mục
Game Mobile
Phần Mềm - Ứng Dụng
Hình Nền Đẹp
Kinh Nghiệm Thủ Thuật
Giải Trí Thư Giản
Phim Tổng Hợp
Hổ Trợ Học Tập
Tiện Ích Wap Online
Điện Thoại Bạn Có Chưa?
game online - kinh nghiem thu thuat - app android - game android - phim hanh dong - lap trinh c - lap trinh pascal - giai tri
U-ON