Bài giảng Nhập môn lập trình: Bài 2 - TS. Ngô Hữu Dũng

53 6 0
Bài giảng Nhập môn lập trình: Bài 2 - TS. Ngô Hữu Dũng

Đ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

Bài giảng Nhập môn lập trình: Bài 2 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 thiệu ngôn ngữ lập trình C, trình biên dịch/thông dịch, cấu trúc chương trình, định dạng trong C, biến, kiểu dữ liệu, hằng số, từ khóa, toán tử, thư viện stdio.h, stdlib.h, math.h, string.h, ctype.h, time.h, nhập xuất căn bản,...

TRƯỜNG ĐẠI HỌC CƠNG NGHIỆP THÀNH PHỐ HỒ CHÍ MINH Nhập mơn lập trình Các thành phần TS Ngô Hữu Dũng Nội dung Giới thiệu ngôn ngữ lập trình C       Trình biên dịch/thơng dịch Cấu trúc chương trình Định dạng C Biến, kiểu liệu Hằng số, từ khóa, tốn tử Thư viện   stdio.h, stdlib.h, math.h, string.h, ctype.h, time.h Nhập xuất    Nhập: scanf, cin, gets Xuất: printf, cout, puts Nhập mơn lập trình - Cơ Ngơn ngữ lập trình C  Được phát triển Dennis Ritchie phịng thí nghiệm AT&T Bell vào đầu thập niên 1970  C dùng hệ điều hành UNIX phát triển với hệ điều hành  C lan rộng nhiều hệ điều hành khác trở thành ngôn ngữ phổ dụng Nhập mơn lập trình - Cơ Trình biên dịch/Trình thơng dịch Mã nguồn Source code Trình biên dịch Compiler Mã máy Machine Code Source Code Trình thơng dịch Interpreter Input Executable Program Output Trình biên dịch: Phân tích chương trình biên dịch thành mã máy Input Output Trình thơng dịch: Phân tích thực thi chương trình lúc Nhập mơn lập trình - Cơ Biên dịch chạy chương trình  IDE – Integrated Development Environment  Compiler Object code file.obj Phân tích biên dịch mã nguồn thành mã đối tượng Trình liên kết  Biên soạn mã nguồn Trình biên dịch   Source code file.c Trình soạn thảo   Editor Kết hợp mã đối tượng thư viện thành mã thực thi Libraries Linker IDE (Integrated Development Environment) Nhập mơn lập trình - Cơ Executable code file.exe Sửa lỗi - debug  Lỗi cú pháp    Semantic Errors Phát trình biên Syntactic dịch Errors Lỗi từ khóa, cú pháp, ngữ pháp Lỗi ngữ nghĩa     Được phát người sử dụng Lỗi kết chương trình Lỗi xuất Libraries trình thực thi chương trình Đúng cú pháp sai kết Editor Source code file.c Compiler Object code file.obj Linker Nhập mơn lập trình - Cơ Executable code file.exe Quiz Mục đích việc “biên dịch” chuyển đổi      A Ngôn ngữ bậc thấp sang bậc cao B Chương trình thành mã nguồn C Mã nguồn sang mã máy D Mã máy sang mã nguồn Trường hợp sau “lỗi ngữ nghĩa”?      A Lỗi biên dịch chương trình B Chương trình tính sai kết C Lỗi gõ sai câu lệnh D Lời thích khơng có nghĩa Nhập mơn lập trình - Cơ Định dạng C Có phân biệt chữ in HOA chữ in thường! Các dòng trống, khoảng trắng, lời thích trình biên dịch bỏ qua Các dấu thụt dịng giúp chương trình dễ đọc, rõ ràng  Có thể dùng tab dấu cách Câu lệnh kết thúc dấu chấm phẩy ; Chuỗi ký tự đặt hai dấu hai nháy "Chuỗi" Một ký tự đặt hai dấu nháy 's'       Nhập mơn lập trình - Cơ Lời thích  Hai cách ghi thích // thích dịng  /* thích khối*/   Ví dụ /* Chương trình C ** In hình dòng chữ Hello 2017!*/ #include //Khai báo thư viện Nhập mơn lập trình - Cơ Biến  Biến dùng để lưu trữ liệu kết tính tốn  Kiểu liệu: Ngun, thực, ký tự, chuỗi, mảng, cấu trúc, trỏ… Tên biến: Do người lập trình tự đặt Biến phải khai báo trước sử dụng        10 Cú pháp: ; int year; float score; char kyTu; char name[50]; Nhập môn lập trình - Cơ Hàm thường dùng thư viện ctype.h   Khai báo: #include Hàm tolower: Chuyển ký tự sang chữ thường    Hàm toupper: Chuyển ký tự sang chữ in    Nguyên mẫu int tolower ( int c ); char c = ‘N’; tolower(c); // c = ‘n’ Nguyên mẫu int toupper ( int c ); char c = ‘n’; toupper(c); // c = ‘N’ Các hàm kiểm tra ký tự     39 isalnum(c): Trả true (khác 0) c số chữ isalpha(c): Trả true c chữ islower(c): Trả true c chữ thường isupper(c): Trả true c chữ in Nhập mơn lập trình - Cơ Quiz – Tính tốn  Cho biến số ngun x, viết biểu thức tính: ( )  a=  b=  c= (  d= +2  e= +   40 ( ) 3)( + 1) = ( + 2) g= ( 2) + ( + 1) Nhập mơn lập trình - Cơ Quiz – Tính tốn (tham khảo)  Cho biến số nguyên x, viết biểu thức tính: ( )  a=  b=  c= (  d= +2 d = sqrt(pow(x,2)+2);  e= + e = sqrt((x+4)/4.0 + (x-3)/2.0);   41 ( a = (x+1)/2.0; ) b = 4*(x+2)/3.0; 3)( + 1) = ( + 2) g= ( ( + 2) c = (1/3.0)*(x-3)*(x+1); 2) f = (x+2)*sqrt((5/3.0)*(pow(x,4)-2)); g = (x+1)/3.0*sqrt(pow(x+2,4)); Nhập mơn lập trình - Cơ Nhập liệu   Chú ý nhập kiểu liệu Nhập số nguyên   Nhập số thực   float b; scanf(“%f”, &b); Nhập ký tự   int a; scanf(“%d”, &a); #include int main() { int a; float b; char c; char s[50]; char c; scanf(“%c”, &c); scanf("%d", &a); scanf("%f", &b); scanf("%c", &c); fflush(stdin); gets(s); return 0; Nhập chuỗi ký tự      42 char s[50]; fflush(stdin); // xoá đệm đầu vào gets(s); scanf(“%s”, &s); // ký tự trắng scanf(“%[^\n]s”, &s); // enter } Nhập mơn lập trình - Cơ Xuất liệu   Chú ý xuất kiểu liệu Xuất số nguyên   Xuất số thực   printf(“%f”, b); #include int main() { int a; float b; char c; char s[50]; scanf("%d", &a); scanf("%f", &b); scanf("%c", &c); fflush(stdin); gets(s); 10 Xuất ký tự   printf(“%d”, a); printf(“%c”, c); Xuất chuỗi ký tự  printf(“%s”, s); printf("a printf("b printf("c printf("s return 0; 11 12 13 14 15 16 43 } Nhập mơn lập trình - Cơ = = = = %d\n", %f\n", %c\n", %s\n", a); b); c); s); Định dạng biểu diễn liệu  %[flags][width][.precision][length]specifier specifier %d, %i %u %o %x, %X %f, %F %e, %E %c %s %p %% Kết Số nguyên có dấu Số ngun khơng dấu Số bát phân khơng dấu Số thập lục phân không dấu Số thực Ký hiệu khoa học Ký tự Chuỗi ký tự Địa trỏ -95, 23 7235 610 7fa, 7FA 392.65 3.92e+2, 3.92E+2 a laptrinh b8000000 In dấu % % %a, %A Số thập lục phân kiểu thực 0xb.f3p-2, 0XB.F3P-2 %g, %G Dạng ngắn %e, %E %f,%F 392.65 44 Ví dụ Nhập mơn lập trình - Cơ Định dạng biểu diễn liệu  %[flags][width][.precision][length]specifier flags Mô tả width – Canh trái width + Buộc in dấu + – Số ký tự tối thiểu in precision Số ký tự sau dấu chấm động (space) Ký tự trống trước liệu In số trước liệu 45 length di uox (none) int unsigned int hh signed char unsigned char h short int unsigned short int l long int unsigned long int Nhập môn lập trình - Cơ Minh hoạ biểu diễn liệu #include int main() { printf("Char: %c %c \n", 'a', 65);//Char: a A printf("Integer: %d \n", 1999); //Integer: 1999 printf("Space: %7d \n", 1999); //Space: 1999 printf("Zero: %07d \n", 1999); //Zero: 0001999 printf("Float: %.2f\n", 3.1416); //Float: 3.14 printf("Float: %6.2f\n", 3.1416); //Float: 3.14 printf("String: %s\n", "Chuoi"); //String: Chuoi 10 printf("Hexa: %x\n", 100); //Hexa: 64 11 printf("Octo: %o\n", 100); //Octo: 144 12 13 printf("Hexa: %#x\n", 100); //Hexa: 0x64 14 printf("Octo: %#o\n", 100); //Octo: 0144 return 0; 15 16.} 46 Nhập mơn lập trình - Cơ Mã escape    Mã escape dùng để đại diện cho ký tự đặc biệt chuỗi, thao tác khó trình bày trực tiếp Mã escape đặt chuỗi định dạng lệnh printf Ví dụ: printf(“A\tB\n”); 47 Escape code Description \n newline \r carriage return \t tab \v vertical tab \b backspace \f form feed (page feed) \a alert (beep) \' single quote (') \" double quote (") \? question mark (?) \\ backslash (\) Nhập mơn lập trình - Cơ Kết thúc Bài  Giới thiệu ngơn ngữ lập trình C       Thư viện   Trình biên dịch/thơng dịch Cấu trúc chương trình Định dạng C Biến, kiểu liệu Hằng số, từ khóa, tốn tử stdio.h, stdlib.h, math.h, string.h, ctype.h, time.h Nhập xuất   48 Nhập: scanf, cin, gets Xuất: printf, cout, puts Nhập mơn lập trình - Cơ Bài tập 2.1: Biến kiểu biến  Viết chương trình nhập vào từ bàn phím xuất hình thơng tin sau 10 49 Mã ID Năm sinh Họ tên Chiều cao Cân nặng Giới tính: Chỉ cần lưu giá trị ‘F’ (female) ‘M’ (male) Tuổi Đã lập gia đình? Chỉ cần lưu có (true) không (false) Địa email Nghề nghiệp Nhập môn lập trình - Cơ Bài tập 2.2: Nhập, tính tốn, xuất  Viết chương trình nhập vào số ngun x, tính tốn xuất hình giá trị biểu thức sau: ( )  a=  b=  c= (  d= +2  e= +   50 ( ) 3)( + 1) = ( + 2) g= ( 2) + ( + 1) Nhập mơn lập trình - Cơ Bài tập 2.3: Chữ số   Viết chương trình tạo số nguyên ngẫu nhiên gồm chữ số, xác định chữ số hàng đơn vị, hàng chục hàng trăm số nguyên Ví dụ: Nhập vào 365   Xuất ra: tram, chuc, don vi Gợi ý:       51 Số hàng đơn vị: a % 10 Số hàng chục: (a % 100) / 10 Số hàng trăm: (a % 1000) / 100 Số hàng ngàn: (a % 10000) / 1000 Số hàng chục ngàn: (a % 100000) / 10000 Số hàng trăm ngàn: (a % 1000000) / 100000 Nhập mơn lập trình - Cơ Bài tập 2.4: Thời gian  Viết chương trình nhập vào tổng số giây, quy đổi xuất hình ngày, giờ, phút, giây tương ứng  Ví dụ:    Nhập vào tổng số giây 90061 Xuất ra: ngày, giờ, phút, giây Gợi ý:  52 Tương tự 2.3 Nhập mơn lập trình - Cơ Bài tập 2.5 – Số ngẫu nhiên  Viết chương trình xuất hình số ngẫu nhiên sau      a có giá trị khoảng từ đến 89 b có giá trị khoảng từ 10 đến 99 c có giá trị khoảng từ -30 đến 30 d có giá trị a b nhập từ bàn phím Gợi ý:  53 rand()%10 tạo số có giá trị từ đến Nhập mơn lập trình - Cơ ... trỏ -9 5, 23 723 5 610 7fa, 7FA 3 92. 65 3.92e +2, 3.92E +2 a laptrinh b8000000 In dấu % % %a, %A Số thập lục phân kiểu thực 0xb.f3p -2 , 0XB.F3P -2 %g, %G Dạng ngắn %e, %E %f,%F 3 92. 65 44 Ví dụ Nhập. .. c= (  d= +2 d = sqrt(pow(x ,2) +2) ;  e= + e = sqrt((x+4)/4.0 + (x-3) /2. 0);   41 ( a = (x+1) /2. 0; ) b = 4*(x +2) /3.0; 3)( + 1) = ( + 2) g= ( ( + 2) c = (1/3.0)*(x-3)*(x+1); 2) f = (x +2) *sqrt((5/3.0)*(pow(x,4) -2 ) );... _mot_Ngoi_Sao 13 T_T 14 ^_^ 15 edthbdl_mbcln2h 16 dienTich@ 17 Chu-Vi-Hinh-Tron 18 mayViTinh 19 Tong+Hieu 20 24 gio 12 Nhập môn lập trình - Cơ Quiz - khai báo biến  Hãy khai báo biến phù hợp

Ngày đăng: 08/05/2021, 14:11

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan