1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Kỹ thuật lập trình: Bài 1 - TS. Ngô Hữu Dũng

30 12 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 30
Dung lượng 473,67 KB

Nội dung

Bài giảng Kỹ thuật lập trình: Bài 1 do TS. Ngô Hữu Dũng biên soạn cung cấp cho người học các kiến thức: Giải thuật đệ quy, quy nạp toán học, lập trình đệ quy, kiểu dữ liệu cấu trúc, kiểu cấu trúc - struct, kiểu hợp - union, biến động và kiểu con trỏ, biến động và tĩnh, biểu con trỏ - pointer, biểu tập tin và vào ra dữ liệu,...

TRƯỜNG ĐẠI HỌC CƠNG NGHIỆP THÀNH PHỐ HỒ CHÍ MINH Kỹ thuật lập trình Programming Fundamentals Ngơ Hữu Dũng Bài – Giới thiệu Blog: http://monktlt.blogspot.com/ Group: https://www.facebook.com/groups/monktlt Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngơ Hữu Dũng Nội dung  Giải thuật đệ quy    Kiểu liệu cấu trúc    Kiểu cấu trúc - struct Kiểu hợp - union Biến động kiểu trỏ    Quy nạp tốn học Lập trình đệ quy Biến động tĩnh Kiểu trỏ - pointer Kiểu tập tin vào liệu  Các thao tác với tập tin Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng Tài liệu      Slide giảng Brian W Kernighan and Dennis M Ritchie The C Programming Language (Second Edition) Prentice-Hall Englewood Cliffs, New Jersey, 1988 Bản dịch tiếng Việt: Giáo trình Ngơn ngữ lập trình C Bài tập thực hành Tham khảo thêm      Phạm Văn Ất Kỹ thuật lập trình C NXB Khoa học Kỹ thuật, 1995 Randal E.Bryant and David R.O’Hallaron Computer’s Perspective, 2001 Bjarne Stroustrup The C++ Programming Language, AT&T Labs Murray Hill, New Jersey Addison-Wesley, 1997 Andy Oram and Greg Wilson, Beautiful Code, 2007 cplusplus.com Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngơ Hữu Dũng Lịch trình Tuần Nội dung Lý thuyết Thực hành Thảo luận Tự học 4 4 2 Quy nạp tốn học Lập trình đệ quy Kiểu cấu trúc ứng dụng 3 (Bài tập) 10 Biến động kiểu trỏ (Bài tập) 11 12 13 14 15 (Bài tập) Kiểu tập tin, vào/ra liệu Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng Kiểm tra đánh giá  Kiểm tra thường kỳ: 20% Kiểm tra kỳ: 30% Kiểm tra cuối kỳ: 50%  Số tín chỉ: (60 tiết)      Lý thuyết: 24 Thảo luận: Thực hành: 30 Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngơ Hữu Dũng Ơn tập qua số ví dụ 10 11 12 #include #include /*Tập tin header*/ /*Tập tin header*/ int main() //Chương trình { int x, y, z; //Khai báo biến x = 5; y = 10; z = x + y; printf("Tong la %d", z); getch(); return 0; } Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngơ Hữu Dũng Hằng số 10 11 12 13 #include #define PI 3.14 /* PI số */ int main() { int r; // Bán kính hình trịn float S; // Diện tích hình trịn printf("Nhap ban kinh hinh tron: "); scanf("%d", &r); S = PI * r * r; printf("Dien tich hinh tron = %f\n", S); printf("Chu vi hinh tron = %f", 2*r*PI); return 0; } Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngơ Hữu Dũng Hoán vị – Dùng biến tạm #include int main() { int x, y, temp; // temp biến tạm x = 10;y = 60; printf("x = %d, y = %d.\n",x, y); temp = x; // Hoán vị dùng biến tạm x = y; y = temp; printf("Hoan vi: x = %d, y = %d.",x, y); return 0; } 10 11 12 // Khai báo thư viện Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngơ Hữu Dũng Hốn vị – Khơng dùng biến tạm #include int main() { int x, y; // Không dùng biến tạm x = 10;y = 60; printf("x = %d, y = %d.\n",x, y); x = x + y; y = x - y; x = x - y; printf("Hoan vi: x = %d, y = %d.",x, y); return 0; } 10 11 12 10 // Khai báo thư viện Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngơ Hữu Dũng Mảng – dãy số 10 11 12 13 16 #include int main() { int mang[5]; // Dãy số gồm phần tử int i = 3; mang[0] = 1; // Phần tử đầu tiên: mang[0] mang[1] = mang[0] + 1; mang[2] = mang[0] + mang[1]; mang[i++] = mang[i-2] + mang[i-1]; mang[i] = mang[i-2] + mang[i-1]; printf("%d",mang[4]); return mang[4]; mang[0] mang[1] mang[2] mang[3] } ? ? ? Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngơ Hữu Dũng mang[4] ? Mảng (tiếp theo) 10 11 12 17 #include int main() { float diemky1[3] = {5.9, 8.6, 7.4}; float diemky2[] = {6.3, 8.5, 6.3}; float toan, ly, hoa; toan = (diemky1[0] + diemky2[0])/2; ly = (diemky1[1] + diemky2[1])/2; hoa = (diemky1[2] + diemky2[2])/2; printf("Diem tong ket: %.1f",(toan+ly+hoa)/3); return 0; } Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng Mảng đa chiều Học kỳ (cột 0) 10 11 12 18 Học kỳ (cột 1) Toán (hàng 0) diem[0][0]=5.9 diem[0][0]=6.3 #include Lý (hàng 1) diem[0][0]=8.6 diem[0][0]=8.5 int main() Hóa (hàng 2) diem[0][0]=6.4 diem[0][0]=5.3 { float diem[3][2] = {{5.9,6.3},{8.6,8.5},{6.4,5.3}}; float toan, ly, hoa, tongket; toan=(diem[0][0]+diem[0][1])/2; ly=(diem[1][0]+diem[1][1])/2; hoa=(diem[2][0]+diem[2][1])/2; tongket = (toan+ly+hoa)/3; printf("Diem tong ket: %.1f.",tongket); return 0; } Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng Chuỗi ký tự 10 11 12 13 14 19 #include #include 'C' 'h' 'a' 'o' int main() { char ten [30]; char gioithieu[50] = "Toi ten la "; char chao[6] = {'C','h','a','o','!','\0'}; printf("Nhap ten cua ban: "); scanf("%[^\n]s",&ten); strcat(gioithieu,ten); printf("%s \n%s \n", chao, gioithieu); printf("Ten cua toi co %d ky tu.",strlen(ten)); return 0; } Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng '!' '\0' Kiểu liệt kê - enum 10 11 12 13 14 15 16 20 #include enum week {SUN, MON, TUE, WED, THU, FRI, SAT}; int main() { enum week today; int date=5; today = TUE; printf("Hôm "); (today==0)?printf("CN"):printf("thứ %d",today+1); printf("\nNgày hẹn "); if (date==SAT||date==SUN) printf("cuối tuần."); else printf("ngày tuần."); return 0; } Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng else if 10 11 12 13 14 15 16 17 18 21 #include enum week {SUN, MON=2, TUE, WED, THU, FRI, SAT}; int main() { enum week today=WED; printf("Hom la "); if (today==MON) printf("thu hai."); else if (today==TUE) printf("thu ba."); else if (today==WED) printf("thu tu."); else if (today==THU) printf("thu nam."); else if (today==FRI) printf("thu sau."); else printf("cuoi tuan."); return 0; } Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng Switch 10 11 12 13 14 15 16 17 18 19 22 #include #include int main() { time_t t = time(NULL); // Lấy thời gian struct tm *time = localtime(&t); // Đưa vào tm struct int today = time->tm_wday; // Week day từ đến printf("Hom la "); switch (today) { case 1: printf("thu hai.");break; case 2: printf("thu ba.");break; case 3: printf("thu tu.");break; case 4: printf("thu nam.");break; case 5: printf("thu sau.");break; default: printf("cuoi tuan."); } return 0; } Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng Switch (tiếp theo) 10 11 12 13 14 23 #include int main() { int m = 1; switch(m) { case 0: printf("Zero\n"); case 1: printf("One\n"); case 2: printf("Two\n"); case 3: printf("Three\n"); } printf("m = %d\n", m); return 0; } Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng For 10 11 12 24 #include int main() { int a[10] = {1,2,3,4,5,-6,7,-8,9,10}; int i, tong = 0; for (i=0; i

Ngày đăng: 11/05/2021, 03:07

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w