LTC- cấu trúc cơ bản
Lập trình CLập trình CChương 3: Các khái niệm cơ bảnChương 3: Các khái niệm cơ bảnBiên soạn: TS Ngô Hữu PhúcBiên soạn: TS Ngô Hữu PhúcBộ môn Khoa học máy tínhBộ môn Khoa học máy tínhHọc viện Kỹ thuật quân sựHọc viện Kỹ thuật quân sự1Chương 3: Cấu trúc cơ bản của chương trình C Nội dungNội dung3.1. Lời chú thích.3.2. Lệnh và khối lệnh.3.3. Cấu trúc cơ bản của chương trình C.3.4. Một số qui tắc cần nhớ khi viết chương trình.2Chương 3: Cấu trúc cơ bản của chương trình C 3.1. Lời chú thích3.1. Lời chú thích•Trong quá trình viết chương trình, nên sử dụng lời chú thích để chương trình dễ hiểu hơn.•Có thể để lời giải thích ở bất kỳ vị trí nào trong chương trình.•Lời giải thích được đặt giữa hai dấu /* và */. Ví dụ:int m,n; /* m la so cot cua ma tran, n la so hang cua ma tran */•Trong trình biên dịch C++, có thể đặt lời giải thích sau dấu //. Khi đó, tất cả ký tự sau // sẽ là lời giải thích.Ví dụ:int m,n; // m la so cot cua ma tran, n la so hang cua ma tran3Chương 3: Cấu trúc cơ bản của chương trình C 3.1. Lời chú thích (t)3.1. Lời chú thích (t)Ví dụ: Viết chương trình cho phép cấp phát bộ nhớ cho chuỗi, sao chép chuỗi và in chuỗi.#include "stdio.h” /* thu vien vao ra chuan */#include "string.h“ /* thu vien thao tac voi chuoi */#include "alloc.h“ /* thu vien cap phat bo nho */#include "process.h“ /* thu vien xu ly tien trinh */#include “conio.h“ /* thu vien thao tac voi man hinh */void main() { char *str; /* Cấp phát bộ nhớ cho xâu ký tự */ if ((str = (char *)malloc(10)) == NULL) { printf(“Khong du bo nho\n"); exit(1); /* Kết thúc chương trình nếu thiếu bộ nhớ */ } strcpy(str, "Hello"); /* copy "Hello" vào xâu */ printf("String is %s\n", str); /* Hiển thị xâu */ free(str); /* Giải phóng bộ nhớ */ // dừng chương trình để xem kết quả getch(); }4Chương 3: Cấu trúc cơ bản của chương trình C 3.2. Lệnh và khối lệnh3.2. Lệnh và khối lệnh3.2.1. Lệnh3.2.1. Lệnh•Một biểu thức kiểu như x=0 hoặc ++i hoặc scanf( .),… trở thành câu lệnh của C khi có đi kèm theo dấu ; ở cuối cùng.Ví dụ:x=0;++i;// i=i+1;i++;scanf( .);•Trong chương trình C, dấu ; là dấu hiệu kết thúc của một câu lệnh.5Chương 3: Cấu trúc cơ bản của chương trình C 3.2.2. Khối lệnh3.2.2. Khối lệnh•Một dãy các câu lệnh được bao bởi các dấu { } gọi là một khối lệnh. Ví dụ:{ a=2;b=3;printf("\n%6d%6d",a,b);}•C xem một khối lệnh cũng như một câu lệnh riêng lẻ. Nói cách khác, chỗ nào có thể viết được một câu lệnh thì ở đó cũng có thể đặt một khối lệnh.•Khai báo ở đầu khối lệnh: Các khai báo biến và mảng chẳng những có thể đặt ở đầu của một hàm mà còn có thể viết ở đầu khối lệnh:{ int a,b,c[50];float x,y,z,t[20][30];a==b==3;x=5.5; y=a*x;z=b*x;printf("\n y= %8.2f\n z=%2.6f",y,z);}6Chương 3: Cấu trúc cơ bản của chương trình C 3.2.2. Khối lệnh (t)3.2.2. Khối lệnh (t)Sự lồng nhau của các khối lệnh và phạm vi hoạt động của các biến và mảng:•Bên trong một khối lệnh lại có thể viết lồng khối lệnh khác. •Sự lồng nhau theo cách trên không hạn chế. •Khi máy bắt đầu làm việc với một khối lệnh, các biến và mảng khai báo bên trong nó mới được hình thành và được cấp phát bộ nhớ. •Các biến này chỉ tồn tại trong thời gian máy làm việc bên trong khối lệnh. Chương 3: Cấu trúc cơ bản của chương trình C 7 3.2.2. Khối lệnh (t)3.2.2. Khối lệnh (t)Nhận xét:•Giá trị của một biến hay một mảng khai báo bên trong một khối lệnh không thể đưa ra sử dụng ở bất kỳ chỗ nào bên ngoài khối lệnh đó. •Có thể khai báo trùng tên với các biến ở ngoài khối.•Nếu có một biến đã được khai báo ở ngoài một khối lệnh và không trùng tên với các biến khai báo bên trong khối lệnh này thì biến đó cũng có thể sử dụng cả bên trong cũng như bên ngoài khối lệnh.Chương 3: Cấu trúc cơ bản của chương trình C 8 Ví dụVí dụXét đoạn chương trình sau:{ int a=5,b=2;{ int a=4;b=a+b;printf("\n a trong =%3d b=%3d",a,b);}printf("\n a ngoai =%3d b=%3d",a,b);}Khi đó đoạn chương trình sẽ in kết quả như sau:•a trong =4 b=6•a ngoài =5 b=6Do tính chất biến a trong và ngoài khối lệnhChương 3: Cấu trúc cơ bản của chương trình C 9 3.3. Cấu trúc cơ bản của chương trình C3.3. Cấu trúc cơ bản của chương trình C•Với cấu trúc của chương trình trên C, cần quan tâm đến hàm. •Tính độc lập của hàm thể hiện ở hai điểm:–Không cho phép xây dựng một hàm bên trong các hàm khác.–Mỗi hàm có các biến, mảng, . riêng và chúng chỉ được sử dụng nội bộ bên trong hàm. Nói cách khác hàm là đơn vị có tính chất khép kín.•Một chương trình bao gồm một hoặc nhiều hàm. Hàm main() là hàm phần bắt buộc của chương trình. •Các chương trình C được tổ chức theo mẫu:< .>hàm 1< .>hàm 2< .>< .>hàm n•Bên ngoài, đặt:#include . (dùng để khai báo sử dụng các hàm chuẩn), #define . (dùng để định nghĩa các hằng), định nghĩa kiểu dữ liệu bằng typedef, khai báo các biến ngoài, mảng ngoài, Chương 3: Cấu trúc cơ bản của chương trình C 10 [...]...3.3 Cấu trúc cơ bản của chương trình C (t) Tóm lại cấu trúc cơ bản của chương trình C như sau: Các #include Các #define Khai báo các đối tượng dữ liệu ngoài (biến, mảng, cấu trúc, vv ) Khai báo nguyên mẫu các hàm Hàm main() Định nghĩa các hàm (hàm main có thể đặt sau hoặc xen vào giữa các hàm khác) Các tệp chương trình nguồn của ngôn ngữ C có phần mở rộng là C Chương 3: Cấu trúc cơ bản. .. printf(“%d”,x); } void main() { double x,y,z; printf("\n Nhap x va y"); scanf("%lf%lf",&x,&y); z=pow(x,y); /* hàm lấy luỹ thừa y luỹ thừa x */ printf("\n x= %8.2lf \n y=%8.2lf \n z=%8.2lf",x,y,z); } Chương 3: Cấu trúc cơ bản của chương trình C 12 3.4 Một số qui tắc cần nhớ khi viết chương trình • Qui tắc 1: Mỗi câu lệnh có thể viết trên một hay nhiều dòng nhưng phải kết thúc bằng dấu ; • Qui tắc 2: Các lời giải thích... đầu chương trình ta phải khai báo sử dụng như sau: #include "d:\\tc\\stdio.h " • Qui tắc 4: Một chương trình có thể chỉ có một hàm chính ( hàm main() ) hoặc có thể có thêm vài hàm khác Chương 3: Cấu trúc cơ bản của chương trình C 13 . 3: Cấu trúc cơ bản của chương trình C 10 3.3. Cấu trúc cơ bản của chương trình C (t)3.3. Cấu trúc cơ bản của chương trình C (t)Tóm lại cấu trúc cơ bản. lệnhChương 3: Cấu trúc cơ bản của chương trình C 9 3.3. Cấu trúc cơ bản của chương trình C3.3. Cấu trúc cơ bản của chương trình C•Với cấu trúc của chương