Lập trình cấu trúc... Là một đoạn mã lệnh độc lập, được đặt tên, thực hiện một nhiệm vụ cụ thể và có thể trả về một giá trị cho chương trình gọi hàm Sử dụng hàm trong chương trình g
Trang 1LẬP TRÌNH C TRÊN LINUX
TS Lê Văn Vinh
Bộ môn Vật lý tin học
1
Trang 2Lập trình cấu trúc
Trang 4 Là một đoạn mã lệnh độc lập, được đặt tên, thực hiện một nhiệm vụ cụ thể và có thể trả
về một giá trị cho chương trình gọi hàm
Sử dụng hàm trong chương trình giúp:
Chia nhỏ chương trình thành những mô đun nhỏ
dễ quản lý
Thống nhất các đoạn mã tương tự nhau, sử dụng nhiều lần trong một chương trình
4
Trang 5Các hàm trong C:
Trang 7Hoạt động của Hàm:
Trang 8Khai báo Hàm:
Trang 9File tiêu đề
Trang 10Định nghĩa Hàm:
Trang 11Các thành phần của Hàm:
Trang 12float ang, adj, opp;
printf("Nhap gia tri cua goc (theo do:"); scanf("%f", &ang); printf("Nhap canh ke:"); scanf("%f", &adj);
opp= adj*tan(Radian(ang));
printf("Canh doi la: %f\n", opp);
}
/* Ham tinh Radian */
float Radian(float deg) {
float result;
12
Trang 13Tên hàm:
Trang 14Danh sách tham số:
Trang 15Giá trị trả về:
Trang 16Thân hàm:
Trang 17if(a>b) a=a-b;
else b=b-a;
}
17
Trang 18Phạm vi truy cập của biến:
Trang 19Phạm vi truy cập
Trang 20Biến tự động:
Trang 21Cấp lưu trữ:
Trang 22printf("Ban đầu x = %d, y = %d", x, y);
swap( &x, &y);
Trang 23Biến toàn cục
Trang 24Biến toàn cục:
#include <stdio.h>
long fibo(int count);
long f1=1,f2=1;/* khai báo biến toàn cục */ main()
{
int count,n;
printf("\nn =");scanf("%d",&n);
for(count=1;count<=n; ++count) printf("\ni=%2d F=%ld", count,fibo(count));
Trang 25Biến tĩnh
Trang 26Biến register
Trang 27Lệnh return
Trang 28Một số ví dụ:
Trang 29Một số ví dụ:
Trang 30Truyền tham số
Trang 32Truyền bằng tham chiếu:
/* Swapping routine that does work */
Trang 33Dừng chương trình và mã lỗi
Trang 34Truyền mảng cho hàm:
Trang 35Truyền mảng cho hàm
Trang 36Hàm truy cập in mảng 2 chiều:
Trang 37Chương trình:
Trang 38Đệ quy:
Trang 39Tính giai thừa:
Trang 40Tính giai thừa:
Trang 41Đệ quy:
Trang 42Đệ quy:
Trang 43Đệ quy:
Trang 44Cài đặt thuật toán:
Trang 45Con trỏ:
Trang 46Truyền tham số qua trị
Trang 47Giá trị biến và địa chỉ trong bộ nhớ
Trang 48Kiểu dữ liệu con trỏ:
Trang 49Khai báo:
Trang 50Con trỏ và địa chỉ biến
Trang 51Sử dụng con trỏ
Trang 52Các phép toán trên con trỏ
Trang 53Các phép toán trên con trỏ
Trang 54Sử dụng con trỏ như tham số
Trang 55Hàm Swap
Trang 56Con trỏ void
Trang 57Con trỏ và mảng 1 chiều:
Trang 58Con trỏ và mảng 1 chiều:
Trang 59Con trỏ và mảng 1 chiều
Trang 60Ví dụ:
Trang 61Ví dụ:
Trang 62Ví dụ truyền mảng qua con trỏ:
Trang 63Con trỏ và mảng nhiều chiều:
Trang 64Con trỏ và mảng 2 chiều
Trang 65Tính địa chỉ từng phần tử
Trang 66Ví dụ đọc dữ liệu cho mảng 2chiều
Trang 67Mảng các con trỏ
Trang 68Sắp xếp thông qua con trỏ
Trang 69Sắp xếp thông qua con trỏ
Trang 70Mảng nhiều chiều và mảng con trỏ
Trang 71Cấp phát động
Trang 72Cấp phát động
Trang 73Ví dụ:
Trang 74Cấp phát động
Trang 75Ví dụ:
Trang 76Cấp phát động:
Trang 77Ví dụ:
Trang 78Giải phóng vùng nhớ đã cấp phát
Trang 79Ký tự
Trang 80Nhập xuất kí tự
Trang 81getchar()
Trang 82putchar
Trang 83putchar
Trang 84Một số hàm khác
Trang 85Kí tự và chuỗi
Trang 86Xâu kí tự
Trang 87Khai báo và khỏi tạo một xâu
Trang 88Khai báo dưới dạng mảng kí tự
Trang 89Lỗi khi tạo chuỗi
Trang 90Chú ý:
Trang 91Ký tự trong xâu
Trang 92Kí tự trong xâu:
Trang 93Thư viện hàm thao tác với kí tự
Trang 94Danh sách các hàm
Trang 95Làm việc với chuỗi
Trang 96strlen
Trang 97Gán 1 chuỗi vào chuỗi khác
Trang 98Ví dụ
Trang 99Lỗi thường gặp
Trang 100Lỗi thường gặp
Trang 101Ghép chuỗi
Trang 102So sánh chuỗi
Trang 103Biến đổi chuỗi sang số
Trang 104Nhập xuất chuỗi
Trang 105Chuỗi kí tự
Trang 106Ví dụ
Trang 107Ví dụ
Trang 108Mảng các chuỗi kí tự
Trang 109Kiểu liệt kể
Trang 110Kiểu cấu trúc
Trang 111Cấu trúc
Trang 112Khai báo kiểu cấu trúc
Trang 113Định nghĩa kiểu
Trang 114Ví dụ:
Trang 115Định nghĩa cấu trúc
Trang 116Kích thước kiểu cấu trúc
Trang 117Khai báo
Trang 118Khai báo
Trang 119Chú ý
Trang 120Truy cập
Trang 121Truy cập qua con trỏ
Trang 122Truy cập qua thành phần cấu trúc
Trang 123Ví dụ
Trang 124Chú ý
Trang 125Truyền cấu trúc như tham số
Trang 126Truyền bằng tham trị
Trang 127Truyền bằng tham chiếu
Trang 128Mảng các cấu trúc
Trang 129Mảng cấu trúc
Trang 130Ví dụ
Trang 131Ví dụ
Trang 132Union
Trang 133Ví dụ
Trang 134Bài tập & thực hành
134
1) Viết chương trình tính tiền thuê máy dịch vụ Internet và in ra màn hình kết quả Dữ liệu nhập vào là giờ bắt đầu thuê (GBD), giờ kết
sau 5h30
Trang 136Tài liệu tham khảo: