Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 160 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
160
Dung lượng
5,16 MB
Nội dung
C Biên TS H www.hutech.edu.vn *1.2023.CMP1074* tailieuhoctap@hutech.edu.vn : I M CL C M C L C I NG D N V BÀI 1: GI I THI U V MÁY TÍNH 1.1.1 Máy tính gì? 1.1.2 1.1.3 1.1.4 Thành 1.1.5 1.1.6 1.2.1 trình 1.2.2 11 1.2.3 12 1.2.4 .14 14 1.3.1 .14 1.3.2 15 BÀI T P 19 BÀI 2: LÀM QUEN V I NGƠN NG L P TRÌNH C 20 20 2.1.1 Dev C++ .20 2.1.2 Visual Studio Code 21 2.1.3 X code 21 2.1.4 Code::Block 21 2.1.5 Onlinegdb.com .21 22 2.2.1 22 2.2.2 23 2.2.3 24 26 2.3.1 .26 2.3.2 tf 27 2.3.3 .30 32 BÀI T P 33 BÀI 3: CÁC THÀNH PH N TRONG NGÔN NG C 34 II 3.1 34 3.1.1 34 3.1.2 .35 3.1.3 35 3.1.4 Ghi 36 37 3.2.1 .37 3.2.2 37 3.2.3 37 3.2.4 37 3.2.5 38 3.3 39 3.3.1 39 3.3.2 .40 3.4 42 3.4.1 42 3.4.2 42 3.4.3 .43 3.4.4 43 3.4.5 44 3.4.6 .44 3.4.7 .45 3.4.8 46 BÀI T P 48 BÀI 4: C U TRÚC R U KI N 49 49 4.1.1 .49 4.1.2 49 4.1.3 50 4.1.4 51 51 4.2.1 51 4.2.2 55 4.2.3 58 4.2.4 63 4.3 : 66 4.3.1 66 4.3.2 69 4.3.3 72 BÀI T P 73 BÀI 5: C U TRÚC VÒNG L P 75 III 75 5.2 80 5.3 82 84 87 BÀI T P 89 BÀI 6: HÀM 91 91 6.1.1 .91 6.1.2 92 6.2 HÀM TRONG C 93 6.2.1 93 6.2.2 93 6.2.3 Khai báo hàm C .96 6.2.4 96 6.2.5 Hàm main() 97 98 6.3.1 98 6.3.2 .99 6.4 102 6.5 103 6.5.1 ctype.h 103 6.5.2 stdio.h 104 6.5.3 math.h 108 6.5.4 stdlib.h 110 BÀI T P 113 BÀI 7: M NG 114 114 7.1.1 115 7.1.2 119 124 7.2.1 124 7.2.2 Thao tác 128 7.2.3 131 7.2.4 132 BÀI T P 135 BÀI 8: CHU I KÝ T 138 8.1 138 8.2 143 8.2.1 143 8.2.2 144 IV 8.2.3 145 146 BÀI T P 151 TÀI LI U THAM KH O 152 V NG D N MÔ T H C PH N H c ph n tính, v l p trình cung c p cho sinh viên nh ng ki n th l p trình thơng qua ngơn ng l p trình C H c ph n n n t thu h u h t h c ph n ph n ng d y k c v - phép toán - Các - C - N I DUNG H C PH N - Bài 1: - Bài - Bài ti p gi i toán H c xong h c ph n này, sinh viên ph i n - máy o M t khác, n m v ng h c phát tri - n v NH C sau: VI - Bài - Bài - Bài 6: HÀM - Bài - Bài YÊU C U H C PH N t v logic ki n th c toán h n CÁCH TI P NH N N I DUNG H C PH N l p trình h c ph n tính, u tiên giúp sinh viên làm quen v i khái ni m máy p trình máy tính, giúp sinh viên có khái ni n v cách ti p c n gi i quy t toán tin h c, giúp sinh viên có kh i l p trình, ti ti p c n v i h c ph n quan tr ng l i c a ngành Cơng ngh Thơng tin Vì v y, u c bu i lên l p, làm t g ch chân nh ng v không hi p c n v i i h c ph i d nhà, nghiên c u tài li c tài li nl H C PH N m ph n m trình (chuyên c n + t p + ki m tra gi a k ) m cu i k (bài thi gi y - t lu n) h n l p i BÀI 1: BÀI 1: GI I THI U V Sau h c xong này, sinh viên có th n MÁY TÍNH cv n: - 1.1 T CH C MÁY TÍNH 1.1.1 Máy tính gì? tính tốn Hình 1.1: Máy tính k v.v 1.1.2 Ph n c ng BÀI 1: Hình 1.2: 1.1.3 Ph n m m - : L hành th Mac OS 138 BÀI 8: BÀI 8: CHU I KÝ T Sau h c xong này, h c viên có th n c: - liên quan 8.1 KÝ T Ký t VÀ B NG MÃ ASCII m t ki u d t li u char tuân th t bi n ki u char s b c bi t, v a ki u s t t c a ki u ký quy t c c a m t s l n bytes (8 bits), dùn ng (+m t ký t khai báo, kh i t o gán giá tr cho m t bi n ki u ký t , s d ng t khóa char: char ch2{ 75 }; // k char ch3(75); char ch4 = 'K'; char ch5; ch1 = 75; // gán mã Chú ý, b n ch t c a ki nguyên, nên kh i t o ho c gán giá tr cho bi n ki u char, b n hồn tồn có th dùng s ngun (mã ASCII) ho c ký t char ch1{ 75 }; char ch2{ 'K' }; 139 BÀI 8: Ký t s nguyên không gi ng v i mã ASCII s nguyên, b n c n phân bi tránh nh m l n kh i t o m t bi n character Hai cách kh i t u i hoàn toàn khác nhau: char ch1{ '7' }; char ch2{ }; B ng mã ASCII (American Standard Code for Information Interchange - Chu n mã i thông tin Hoa K ) ch a nh ng ký t hi n th nh c a b ng ch Latinh v n máy tính B c s d ng i di n cho ký t B ng mã ASCII chu n có 128 ký t , b ng mã ASCII m r ng có 255 ký t B ng mã ASCII bao g m lo i ký t - Ký t c (ký t u ki n) có mã t -> 31 127 bao g m ký t u phân) 10 11 12 13 14 15 16 17 18 19 20 21 22 23 phân) 000 0000 000 0001 000 0010 000 0011 000 0100 000 0101 000 0110 000 0111 000 1000 000 1001 000 000 000 000 000 000 001 001 001 001 001 001 001 001 1010 1011 1100 1101 1110 1111 0000 0001 0010 0011 0100 0101 0110 0111 phân) 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 HTML bàn phím NUL SOH STX ETX EOT ENQ ACK BEL BS HT ^@ ^A ^B ^C ^D ^E ^F ^G ^H ^I LF VT FF CR SO SI DLE DC1 DC2 DC3 DC4 NAK SYN ETB ^J ^K ^L ^M ^N ^O ^P ^Q ^R ^S ^T ^U ^V ^W Ngồi mã Mã hóa/Trong mã 140 BÀI 8: phân) 24 25 26 27 28 29 30 31 127 - 001 001 001 001 001 001 001 111 Ký t toán t phân) phân) 001 1000 1001 1010 1011 1100 1101 1110 1111 1111 c có mã t HTML bàn phím 18 CAN ^X 19 1A 1B 1C 1D 1E 1F 7F EM SUB ESC FS GS RS US DEL ^Y ^Z ^[ hay ESC ^\ ^] ^^ ^_ DEL End of Medium Thốt Phân tách nhóm Xóa 32 -> 126 bao g m ch (+, - (DEC) (BIN) (HEX) 32 0100000 20 33 0100001 21 34 0100010 22 35 0100011 36 HTML ! ! 23 # # 0100100 24 $ $ 37 0100101 25 % % 38 0100110 26 & & 39 0100111 27 40 0101000 28 ( ( 41 0101001 29 ) ) 42 0101010 2A * * 43 0101011 2B + + 44 0101100 2C , , 45 0101101 2D 46 0101110 2E 47 0101111 2F / / 48 0110000 30 0 49 0110001 31 1 50 0110010 32 2 51 0110011 33 3 52 0110100 34 4 53 0110101 35 5 54 0110110 36 6 55 0110111 37 7 141 BÀI 8: HTML (DEC) (BIN) (HEX) 56 0111000 38 8 57 0111001 39 9 58 0111010 3A : : 59 0111011 3B ; ; 60 0111100 3C < < 61 0111101 3D = = 62 0111110 3E > > 63 0111111 3F ? ? 64 1000000 40 @ @ 65 1000001 41 A A 66 1000010 42 B B 67 1000011 43 C C 68 1000100 44 D D 69 1000101 45 E E 70 1000110 46 F F 71 1000111 47 G G 72 1001000 48 H H 73 1001001 49 I I 74 1001010 4A J J 75 1001011 4B K K 76 1001100 4C L L 77 1001101 4D M M 78 1001110 4E N N 79 1001111 4F O O 80 1010000 50 P P 81 1010001 51 Q Q 82 1010010 52 R R 83 1010011 53 S S 84 1010100 54 T T 85 1010101 55 U U 86 1010110 56 V V 87 1010111 57 W W 88 1011000 58 X X 89 1011001 59 Y Y 90 1011010 5A Z Z 91 1011011 5B [ [ 142 BÀI 8: HTML (DEC) (BIN) (HEX) 92 1011100 5C 93 1011101 5D ] ] 94 1011110 5E ^ ^ 95 1011111 5F _ _ 96 1100000 60 ` ` 97 1100001 61 a a 98 1100010 62 b b 99 1100011 63 c c 100 1100100 64 d d 101 1100101 65 e e 102 1100110 66 f f 103 1100111 67 g g 104 1101000 68 h h 105 1101001 69 i i 106 1101010 6A j j 107 1101011 6B k k 108 1101100 6C l l 109 1101101 6D m m 110 1101110 6E n n 111 1101111 6F o o 112 1110000 70 p p 113 1110001 71 q q 114 1110010 72 r r 115 1110011 73 s s 116 1110100 74 t t 117 1110101 75 u u 118 1110110 76 v v 119 1110111 77 w w 120 1111000 78 x x 121 1111001 79 y y 122 1111010 7A z z 123 1111011 7B { { 124 1111100 7C | | 125 1111101 7D } } 126 1111110 7E ~ ~ 143 BÀI 8: 8.2 CHU I KÝ T 8.2.1 Khai báo s d ng chu i ký t Chu i ký t t m ng chi u g m ph n t c, m t chu i s c k t thúc b i ký t null \ có ki u char r ng) Ví d : chu s e q u e n c e \0 Cách khai báo chu char Khai báo chu i Hoten có chi u dài 31 ký t Do chu i k t thúc b i ký t khai báo chu i có chi u dài 31 ký t null, nên ch có th ch a 30 ký t char Hoten[31]; V a khai báo v a gán giá tr : char M t s ví d v a khai báo v a gán giá tr : char char char char chuoi1[] = "Co so lap trinh"; chuoi2[50] = "Khoa Cong nghe thong tin"; ten1[] = {'H','U','O','N','G','\0'}; ten2[10] = {'H','A','I','\0'}; Chú ý: - Khơng c dùng tốn t chép n i dung c a chu i sang chu i khác char str1[6] = "Hello"; char str2[6] = str1; - c dùng toán t so sánh n i dung hai chu i char str1[] = "Hello"; char str2[] = "Hello"; if(str1==str2) printf("Hai chuoi bang nhau"); 144 - BÀI 8: Phép gán ki u d li u ki u chu char ten[10]; ten="TuanHoang"; Ví d 1: Nh p vào in tên c a b n : #include int main() { char name[31]; printf("Moi nhap ten cua ban: "); scanf("%s",name); printf("Xin chao ban %s",name); return 0; } Dịng 6: name m t m ng char, nên không c n thêm d u & nh p b ng l nh scanf() K t qu ch l n 1: Moi nhap ten cua ban: Huong Xin chao ban Huong K t qu ch n 2: Moi nhap ten cua ban: Danh Huong Xin chao ban Danh K t qu ch y l n khơng hi n th h n ch c a vi c dùng l u nh p chu i, hàm scanf nh n vào d li u n g p kho ng tr ng k t thúc 8.2.2 Nh p/xu t chu i ký t nh p chu i dùng hai l nh gets puts dùng hàm gets nh p chu i ph i xóa b fflush(stdin) hay flushall() n stdio.h c m bàn phím b ng câu l nh BÀI 8: Ví d 10 11 2: Nh p vào in tên c a b n s d ng gets puts #include int main() { char name[31]; puts("Nhap ho ten: "); fflush(stdin); gets(name); puts("Xin chao "); puts(name); return 0; } K t qu ch Nhap ho ten: Nguyen Van Hai Xin chao Nguyen Van Hai 8.2.3 M ng chu i M ng chu i m ng chi u c a ký t Ví d 10 11 12 3: Nh p danh sách h tên c i in hình #include int main() { char list[20][31]; int n; printf("Nhap so nguoi n ="); scanf("%d",&n); for(int i=0;i