Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 28 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
28
Dung lượng
621,67 KB
Nội dung
TIN H C CH2: KI U D IC NG LI U– BI N – BI U TH C Các ki u d li u c b n Bi n, h ng gs Bi u th c Các tóan t C Th t u tiên tiê c a phép toán t Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 1 Ki u d li u Ki u s nguyên: Giá tr s nguyên nh 2912, -1706 Ki u s th c: Giá tr s th c nh 3.14, 29.2, -17.6 Ki u lu n lý: Giá tr (Khác 0) ho c sai (B ng 0) ýt : Ki u ký 256 ký t b ng mã ASCII Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang Ki u d li u Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 1.1 S nguyên có d u Ki u (Type) char int Short int L Long i t int l n (Byte) 2 Khoa TVTHK Tin H c iC ng Mi n giá tr (Range) –128 ~ +127 –32.768 32 768 ~ +32 +32.767 767 –32.768 ~ +32.767 –2.147.483.648 147 483 648 ~ +2 +2.147.483.647 147 483 647 Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 1.2 S nguyên không d u Ki u (Type) l n (Byte) unsigned char unsigned int unsigned g short int unsigned long int Khoa TVTHK Tin H c iC ng 2 Ph n II Ch Mi n giá tr (Range) … 255 … 65.535 … 65.535 … 4.294.967.295 ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 1.3 S th c S th c (Floating point number) Ki u (Type) l n (Byte) Mi n giá tr (Range) float (*) 3.4*10–38 … 3.4*1038 double (**) ( ) 308 … 1.7 7*10 1.7 10–308 7*10 10308 () (*) xác đ n (Single (Single-precision) precision) xác đ n s l (**) xác kép (Double-precision) xác đ n 19 s l Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 1.4 Ki u d li u: Lu n lý c m C ng g m đ nh m t cách không g t ng g minh: false (sai): giá tr true (đúng): giá tr khác 0, th ng Ví d (false), (true), (true), 2.5 (true) > (0, (0 false), false) < (1 (1, true) Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang Ki u d li u: Ký t c m ê ki u u: cchar a Tên Mi n giá tr : 256 ký t b ng mã ASCII Chính ki u s nguyên do: L u t t c d li u d ng s Không g l u tr c ti p kýý t mà ch l u mã ASCII c a ký t Ví d L u s 65 t L u s 97 t Khoa TVTHK Tin H c iC ng ng đ gđ ng ng v i ký t ‘A’… ng g v i kýý t ‘a’ Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang Bi n c m Tên bi n iNumber Ki u d li u int Giá tr c a bi n 10 Cú pháp: ; , ; ; VD: int i;; int j, k = 4; unsigned char dem_so; float ketqua, delta; Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang H ng c m X Tên h ng X Ki u d li u X Giá tr c a h ng Cú pháp: const = ; #define VD: const int MAX_NUMBER = 100; const char LETTER LETTER_A A = “A”; A; const float PI = 3.14; # define PI 3.14 #d define fi MAX MAX_NUM NUM 100 Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 10 Tóan t tính tóan: +, - , * , / , % Toán t + * / % Tên C ng Tr Nhân Chia L y ph n d Ví d 10 + 5.5 = 15.5 5–3=2 2*3=6 / = 3.5 9%4 =1 ̌ Tóan t %: Chia l y s d : VD: a = % ; //giá tr c a a sau l nh = 7/3=2 d Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 14 Tóan t tính tóan: +, - , * , / , % ̌ Chú ý phép chia s nguyên, s th VD: a = 9/2 ; // bi n a có giá tr a = 9/2.0 9/2 // bi n a có giá tr a = 9.0/2 // bi n a có giá tr a = 9.0/2.0 // bi n a có g giá tr Tính a) * * + * -7 a) / / + b) (7 * / - 2) * Khoa TVTHK Tin H c iC ng Ph n II Ch c: 45 4.5 4.5 4.5 Toán t () * / % + = , ng 2: Ki n d li u-bi n-h ng-bi u th c u tiên LåR å å å å Trang 15 Các tóan t Các toán t gán ph c h p (+=, -=, *=, /=, %=) Toán T = += -= *= /= %= Khoa TVTHK Tin H c kh i t o Ví d n = 25 n += 25 n -= 25 n *= 25 n /= 25 n %= 25 iC ng Ph n II Ch T ng gđ ng gv i n = n + 25 n = n – 25 n = n * 25 n = n / 25 n = n % 25 ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 16 Các tóan t Toán T ++ ++ - T ng m T ng m Gi m m Gi m m T ng , gi m (1) Tên t (ti n t t (h u t t (ti ( nt t (h u t ) ) ) ) Ví d : k=5; ++k + 10 // đ c 16 k++ + 10 // đ c 15 k + 10 // đ c 14 k + 10 // đ c 15 ̌ Ti n t (++a) giá tr đ c t ng tr c bi u th c đ c tính giá tr t ng đ c s d ng bi u th c; ̌ H u t (a++) giá tr bi n a đ c t ng sau tính toán Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 17 Các tóan t T ng , gi m (2) Chú ý: a++ ; a ; a-++a ; a ; b = a++ ú ú ú ú ú b = ++a ú a += ; a -= =1; a += ; a -= ; b=a; a++ ; a++ ; b=a; A = 5; B = ++A; A = 5; B = A++; K t qu : A=6, B=6 K t qu : A=6, B=5 Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 18 Tóan t quan h : ==, !=, >, =, = Tên Ví d So sánh b ng So sánh không b ng S sánh So h nh h h n So sánh nh h n ho c b ng So sánh l n h n So sánh l n h n ho c b ng Khoa TVTHK Tin H c iC ng Ph n II Ch == // cho != // cho < 5.5 5 // cho h 5.5 5 // cho 6.3 >= // cho ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 19 Tóan t quan h : ==, !=, >, =, ‘c’ c => Bi u Th c Logic mang giá tr false ‘a’ ‘1’ < ‘A’ => Bi u Th c Logic mang giá tr true ‘$’ > ‘1’ => Bi u Th c Logic mang giá tr false Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 20 Các toán t Toán t ! && || logic ( !, &&, || ) Tên Ví d Ph đ nh lu n lýý ((Not)) !(5 ( == 5)) // đ c Và lu n lý (AND) < && < // đ c Ho c lu n lý (OR) < || < // đ c Tính: a) s1 = (1 > 2) && (3 > 4); b) s2 = (1 > 2) || (3 > 4); c) s3 = !(1 > 2); Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 21 Toán t u ki n ( ? ) condition ? result1 : result2 N u condition true giá tr tr v s result1, result1 n u không giá tr tr v result2 == ? : == +2 ? : 5>3 ? a : b a>b?a:b Khoa TVTHK Tin H c iC ng //tr //tr //tr //tr Ph n II Ch v v v v không b ng b ng 5+2 a,, l n h n giá tr l n h n, a ho c b ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 22 Toán t ph y (,) Toán t ph y X Các bi u th c đ t cách b ng d u , X Các Cá bi u th c l n l t đ c tính tí h t trái t sang ph i X Bi u th c m i nh n đ c giá tr c a bi u th c bên ph i Ví d : int x, x yy, z ; x = (a++, b = b + 2); T ng đ ng: a++; b = b + 2; x = b; // H n ch h s d ng ki u vìì không khô minh i h b ch h Vi t l ii: a++ ; b += ; x=b; Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 23 Chuy n đ i ki u C: T đ ng C bi u th c s nguyên: • N u long int, k t qu long int • N u unsigned int, int k t qu unsigned int Ki u d li u long double ← highest type double float unsigned i d llong long int unsigned int int short in char ← lowest type Khoa TVTHK Tin H c iC ng Ph n II Ch (!)Trong tr ng h p chuy n đ i t highå low, d li u có ó th không khô xác VD: 4.5 å int s ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 24 Chuy n đ i ki u: cast Cho phép chuy n đ i d li u t ki u sang ki u khác Th c hi n = cách đ t tr c bi u th c c n chuy n đ i tên ki u d li u đ c b c c p ngo c đ n () VD: int i; float f =3.14; i = int (f) //i=3 int i = 10.5;; // i = 10 sizeof(): Toán t có m t tham s , có th m t ki u d li u m t bi n tr v kích c b ng byte c a ki u hay đ i t ng a = sizeof (char); //a=1 Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 25 10 u tiên c a tóan t Toán t u tiên () [] -> ! ++ - + * ((cast)) & sizeof * / % + > < >= == != & | ^ && || ?: = += -= *= /= %= &= … , Khoa TVTHK Tin H c iC ng Ph n II Ch LåR LäR å å å å å å å å å å ä ä ä Cao nh t Cao nh t ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 26 10 u tiên c a tóan t Quy t c th c hi n X Th c hi n bi u th c ( ) sâu nh t tr c c X Th c hi n theo th t u tiên toán t , t cao đ n th p X Ngang hàng, t trái sang ph i (å) ho c t ph i sang trái (ä) Ghi chú: tránh nh m l n, s d ng d u () cho bi u th c c n tính tóan tr c Ví d n = + * 5; a > && b < Khoa TVTHK Tin H c iC ng Vi t l i: n = + (3 * 5); Vi t l i: (a > 1) && (b < 2) Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 27 M t vài ví d i u ki n delta l n h n hay b ng gi i PT b c delta >= i u ki n s a b nguyên ê d ng: (a>=0) && (b>=0) i u ki n s a b d u ((a>0) && (b>0)) || ((a c (a>0) && (b>0) && (c>0) i u ki n x th a mãn: –5 < x < (x > –5) && (x < 5) Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 28 [...]... u tiên LåR å å å å Trang 15 3 Các tóan t Các toán t gán ph c h p (+=, -=, *=, /=, %=) Toán T = += -= *= /= %= Khoa TVTHK Tin H c kh i t o Ví d n = 25 n += 25 n -= 25 n *= 25 n /= 25 n %= 25 iC ng Ph n II Ch T ng gđ ng gv i n = n + 25 n = n – 25 n = n * 25 n = n / 25 n = n % 25 ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 16 4 Các tóan t Toán T ++ ++ - T ng m T ng m Gi m m Gi m m T ng , gi m (1) Tên... tóan: +, - , * , / , % ̌ Chú ý phép chia s nguyên, s th VD: a = 9 /2 ; // bi n a có giá tr a = 9 /2. 0 9 /2 0 // bi n a có giá tr a = 9.0 /2 // bi n a có giá tr a = 9.0 /2. 0 // bi n a có g giá tr Tính a) 2 * 5 * 5 + 3 * 2 -7 a) 2 / 3 / 4 + 5 b) (7 * 3 / 4 - 2) * 5 Khoa TVTHK Tin H c iC ng Ph n II Ch c: 4 45 4.5 4.5 4.5 Toán t () * / % + = , ng 2: Ki n d li u-bi n-h ng-bi u th c u tiên LåR å å å å Trang 15 3... Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 13 2 Tóan t tính tóan: +, - , * , / , % Toán t + * / % Tên C ng Tr Nhân Chia L y ph n d Ví d 10 + 5.5 = 15.5 5–3 =2 2*3=6 7 / 2 = 3.5 9%4 =1 ̌ Tóan t %: Chia l y s d : VD: a = 7 % 2 ; //giá tr c a a sau l nh này = 1 vì 7/3 =2 d 1 Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 14 2 Tóan t tính... u () cho bi u th c c n tính tóan tr c Ví d n = 2 + 3 * 5; a > 1 && b < 2 Khoa TVTHK Tin H c iC ng Vi t l i: n = 2 + (3 * 5); Vi t l i: (a > 1) && (b < 2) Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 27 5 M t vài ví d i u ki n delta l n h n hay b ng 0 khi gi i PT b c 2 delta >= 3 i u ki n 2 s a và à b nguyên ê d ng: (a>=0) && (b>=0) i u ki n 2 s a và b cùng d u ((a>0) && (b>0)) || ((a3 ? a : b a>b?a:b Khoa TVTHK Tin H c iC ng //tr //tr //tr //tr Ph n II Ch v v v v 3 vì 7 không b ng 5 4 vì 7 b ng 5 +2 a,, vì 5 l n h n 3 giá tr l n h n, a ho c b ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 22 8... int x, x yy, z ; x = (a++, b = b + 2) ; T ng đ ng: a++; b = b + 2; x = b; // H n ch h s d ng ki u này à vìì không khô minh i h b ch h Vi t l ii: a++ ; b += 2 ; x=b; Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 23 9 Chuy n đ i ki u trong C: T đ ng C 2 bi u th c là s nguyên: • N u 1 trong 2 là long int, k t qu là long int • N u 1 trong 2 là unsigned int, int k t qu là... Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 20 6 Các toán t Toán t ! && || logic ( !, &&, || ) Tên Ví d Ph đ nh lu n lýý ((Not)) !(5 ( == 5)) // đ c 0 Và lu n lý (AND) 5 < 6 && 6 < 6 // đ c 0 Ho c lu n lý (OR) 5 < 6 || 6 < 5 // đ c 1 Tính: a) s1 = (1 > 2) && (3 > 4); b) s2 = (1 > 2) || (3 > 4); c) s3 = !(1 > 2) ; Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li... (char); //a=1 Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 25 10 u tiên c a các tóan t Toán t u tiên () [] -> ! ++ - + * ((cast)) & sizeof * / % + > < >= == != & | ^ && || ?: = += -= *= /= %= &= … , Khoa TVTHK Tin H c iC ng Ph n II Ch LåR LäR å å å å å å å å å å ä ä ä Cao nh t Cao nh t ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 26 10 u tiên c a các tóan... c t ng sau khi đã tính toán Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 17 4 Các tóan t T ng , gi m (2) Chú ý: a++ ; a ; a-++a ; a ; b = a++ ú ú ú ú ú b = ++a ú a += 1 ; a -= =1; a += 1 ; a -= 1 ; b=a; a++ ; a++ ; b=a; A = 5; B = ++A; A = 5; B = A++; K t qu : A=6, B=6 K t qu : A=6, B=5 Khoa TVTHK Tin H c iC ng Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang... n h n ho c b ng Khoa TVTHK Tin H c iC ng Ph n II Ch 5 == 5 // cho 1 5 != 5 // cho 0 5 < 5.5 5 5 // cho h 1 5 5.5 5 5 // cho 0 6.3 >= 5 // cho 1 ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 19 5 Tóan t quan h : ==, !=, >, =, ... (Range) – 128 ~ + 127 – 32. 768 32 768 ~ + 32 + 32. 767 767 – 32. 768 ~ + 32. 767 2. 147.483.648 147 483 648 ~ +2 +2. 147.483.647 147 483 647 Ph n II Ch ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 1 .2 S nguyên... c kh i t o Ví d n = 25 n += 25 n -= 25 n *= 25 n /= 25 n %= 25 iC ng Ph n II Ch T ng gđ ng gv i n = n + 25 n = n – 25 n = n * 25 n = n / 25 n = n % 25 ng 2: Ki n d li u-bi n-h ng-bi u th c Trang... long int Khoa TVTHK Tin H c iC ng 2 Ph n II Ch Mi n giá tr (Range) … 25 5 … 65.535 … 65.535 … 4 .29 4.967 .29 5 ng 2: Ki n d li u-bi n-h ng-bi u th c Trang 1.3 S th c S th c (Floating point number)