Bài giảng tin học đại cương chương 2 kiểu dữ liệu biến biểu thức

28 284 0
Bài giảng tin học đại cương   chương 2  kiểu dữ liệu   biến   biểu thức

Đ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

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)

Ngày đăng: 03/12/2015, 20:37

Từ khóa liên quan

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

Tài liệu liên quan