Bài giảng Tin học cơ sở 2: Chương 2 - Phạm Văn Sự

32 0 0
Bài giảng Tin học cơ sở 2: Chương 2 - Phạm Văn Sự

Đ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

Notes Tin håc cì sð Ch÷ìng 02: Cì b£n vợi ngổn ngỳ lêp trẳnh C Biản soÔn: PhÔm Vôn Sỹ Bở mổn Xỷ lỵ tẵn hiằu v TruyÃn thổng Khoa Kÿ thuªt i»n tû I Håc vi»n Cỉng ngh» Bữu chẵnh Viạn thổng ver.18a Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin håc cì sð ver.18a / 64 Notes PhƯn 01: Kiu dỳ liằu, bián, biu thực v cĂc php toĂn Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin håc cì sð ver.18a / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiºu dỳ liằu cỡ bÊn C Mởt chữỡng trẳnh mĂy tẵnh l quĂ trẳnh: Thỹc hiằn xỷ lỵ dỳ liằu vo theo mởt trẳnh tỹ/cĂch thực xĂc nh  Ôt ữủc mởt kát quÊ Ưu mong muốn Chữỡng trẳnh = CĐu trúc dỳ liằu + GiÊi thuêt Dỳ liằu lữu trỳ mĂy tẵnh: Bẵt Kỵ tỹ Tr÷íng (field) → B£n ghi (record) → File → Cì s dỳ liằu Kỵ tỹ l tờ hủp cĂc bẵt ữủc quy nh theo bÊng mÂ: ASCII, Unicode Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin hồc cỡ s ver.18a / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiºu dú li»u cì b£n C Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin hồc cỡ sð ver.18a / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiºu dú li»u cì b£n C - V½ dư // Chuong trinh C don gian // Vi du so 01: Thu cac kieu du lieu cua C # include < stdio h > # include < limits h > // Ham main int main ( void ) { // === Thu nghiem lon bieu dien cua du lieu printf (" type \t \t size \t \ t\t max \ n"); /* first row of table */ 10 printf (" char \t \t % i\t % i\t\t %i\n " , sizeof ( char ) , CHAR_MIN , CHAR_MAX ); /* row for char */ 11 printf (" signed char \t % i\t %i\t\t %i\ n" , sizeof ( signed char ) , SCHAR_MIN , SCHAR_MAX ); /* row for signed char */ 12 printf (" unsigned char \t %i\t %i\t \t % i\n" , sizeof ( unsigned char ) , 0, UCHAR_MAX ); /* row for unsigned char */ 13 printf (" short int \ t %i\ t %i \t\t %i\n" , sizeof ( short ) , SHRT_MIN , SHRT_MAX ); /* row for short int */ 14 printf (" unsigned short \t %i\ t %i\ t\t %i\n" , sizeof ( unsigned short ) , 0, USHRT_MAX ); /* row for unsigned short int */ 15 printf (" int \t\ t %i \t %i \t % i\n" , sizeof ( int ) , INT_MIN , INT_MAX ) ; /* row for int */ 16 printf (" unsigned int \t Tin%i\t %i\t\ t %u \n" , sizeof ( unsigned Biản soÔn: PhÔm Vôn Sỹ (PTIT) håc cì sð ver.18a / 64 int ) , 0, UINT_MAX ); /* row for unsigned int */ 17 printf (" long int \t %i\t %i\ t % ld \n" , sizeof ( long int ) , LONG_MIN , LONG_MAX ); /* row for long int */ 18 printf (" unsigned long \t %i\t %i\t \t % lu \n" , sizeof ( unsigned long int ) , , ULONG_MAX ); /* row for unsigned long int */ cì b£n 19 Kiºu dú li»u return 0; C - V½ dư 20 } Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n 10 11 12 13 14 // Chuong trinh C don gian // Vi du so 01: Thu cac kieu du lieu cua C # include < stdio h > # include < float h > // Ham main int main ( void ) { // === Thu nghiem lon bieu dien cua du lieu printf (" type \t \t size \t \ t\t max \ n"); /* first row of table */ printf (" float \ t\t %i\t %e\t %e\n" , sizeof ( float ) , - FLT_MAX , FLT_MAX ) ; /* row for float */ printf (" double \t\t %i\t %e\t %e\n " , sizeof ( double ) , DBL_MAX , DBL_MAX ); /* row for double */ printf (" long double \t % i\t % Le \t % Le \ n" , sizeof ( long double ) , - LDBL_MAX , LDBL_MAX ) ; /* row for long double */ return 0; } Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin håc cì sð ver.18a / 64 Notes Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiu dỳ liằu cỡ bÊn C: nh dÔng hin th kiu dỳ liằu vợi printf() Biản soÔn: PhÔm V«n Sü (PTIT) Tin håc cì sð ver.18a / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiºu dú li»u cì b£n C: nh dÔng hin th kiu dỳ liằu vợi printf() - Chú ỵ Khi lm viằc vợi số nguyản: I I I %d v %i tữỡng tỹ Vợi long long int: %lld; Vỵi unsigned long long int: %llu Hiºn số dÔng octal (cỡ số 8): %o; Hin th số dÔng hexa (cỡ số 16): %x hoc %X Khi lm viằc vợi số thỹc: I %F khổng ữủc hộ trủ bi nhiÃu trẳnh biản dch (vẵ dử Microsoft Visual C++, Tiny C Compiler, ) Biản soÔn: PhÔm Vôn Sü (PTIT) Tin håc cì sð ver.18a / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiºu dú li»u cì b£n C: ành dÔng hin th kiu dỳ liằu vợi printf() - Vẵ dö 10 11 12 13 14 15 16 17 18 19 // Chuong trinh C don gian // Vi du so 03: Su dung dinh dang hien thi so nguyen # include < stdio h > // Ham main int main ( void ) { printf (" So nguyen %d\n" ,231) ; printf (" So nguyen %i\n" ,231) ; // % i tuong tu % d printf (" So nguyen %d\n" ,+231) ; // dau + khong duoc in printf (" So nguyen %d\n" , -231) ; // dau - duoc in printf (" So nguyen % hd \n " ,32010) ; printf (" So nguyen % ld \n " ,2000000000 L); printf (" So nguyen %u\n" ,231) ; printf (" So nguyen %u\n" , -231) ; printf (" So nguyen %o\n" ,231) ; printf (" So nguyen %x\n" ,231) ; printf (" So nguyen %X\n" ,231) ; return 0; } Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin hồc cì sð ver.18a / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiºu dú liằu cỡ bÊn C: nh dÔng hin th kiu dỳ liằu vợi printf() - Vẵ dử 10 11 12 13 14 15 16 // Chuong trinh C don gian // Vi du so 03: Su dung dinh dang hien thi so thuc # include < stdio h > // Ham main int main ( void ) { printf (" So thuc % e\n" ,1234567.89) ; printf (" So thuc % e\n" ,+1234567.89) ; // dau + khong duoc in printf (" So thuc % e\n" , -1234567.89) ; // dau - duoc in printf (" So thuc % E\n" ,1234567.89) ; printf (" So thuc % f\n" ,1234567.89) ; // printf (" So thuc % F \ n " ,1234567.89) ; // Visual C ++ khong ho tro printf (" So thuc % g\n" ,1234567.89) ; printf (" So thuc % G\n" ,1234567.89) ; return 0; } Bi¶n soÔn: PhÔm Vôn Sỹ (PTIT) Tin hồc cỡ s ver.18a 10 / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiºu dú li»u cì b£n C: Hin th vợi ở chẵnh xĂc v ở rëng x¡c ành Có ph¡p: %M[.N]B int i =457; double f = 123.94536; printf (" In du lieu voi rong va chinh xac \ n "); printf (" So nguyen :\ n"); printf (" \t %.4 d \n\t %.9 d\n \n" ,i , i); printf (" So thuc :\ n "); printf (" \t %.3 f \n\t %.3 e\n \t %.3 g \n\n" ,f ,f ,f ); printf (" Ket hop cho so thuc \n"); printf (" \t %9.3 f\n" ,f); printf (" Do rong va chinh xac la tham so \n "); printf (" \t %*.* f\n" ,9 ,4 , f ); 10 11 12 13 14 15 16 17 18 19 20 Biản soÔn: PhÔm V«n Sü (PTIT) Tin håc cì sð ver.18a 11 / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiºu dú li»u cì b£n C: printf() vợi cớ nh dÔng Cú phĂp: %HB I 10 11 12 13 14 15 16 17 18 19 20 H : −, +, ' ' (d§u c¡ch), #, (sè 0) printf (" Su dung co dinh dang voi printf () \n"); printf (" Can phai - Can trai :\ n") ; printf (" \t %10 d \t %10 c\t %10 f\n\n " ,5, 'A ' ,1.23) ; printf (" \t % -10 d\t % -10 c\t % -10 f\ n\n" ,5, 'A ' ,1.23) ; printf (" In dau :\ n" ); printf (" \t%d\t %d\n\ n" ,241 , -241) ; printf (" \t %+ d\ t %+ d\ n\n" ,241 , -241) ; printf (" Dau cach :\ n"); printf (" \t% d \n\t% d\n" ,241 , -241) ; printf (" Them tien to so octal hoac hexa :\ n"); printf (" \t %# o\ t %# x\ n" ,1427 ,1427) ; printf (" \t%g\t %# g\n " ,1427.0 ,1427.0) ; printf (" Ket hop nhieu co :\ n "); printf (" \t %+09 d\t %09 d\n" ,452 ,452) ; Biản soÔn: PhÔm Vôn Sü (PTIT) Tin håc cì sð ver.18a 12 / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p toĂn Notes Kiu dỳ liằu, bián v hơng C: Khai bĂo bián Tản bián C l bĐt cự nh danh no hủp lằ I I I Ch gỗm d¢y c¡c c¡i (A-Z v  a-z), c¡c sè (0-9), dĐu gÔch dữợi (_) KHặNG ữủc bưt Ưu bơng chỳ số KHặNG trũng vợi cĂc tứ khõa cừa C F F I I auto, break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, int, long, register, return, short, signed, sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while, Mët sè tø khâa mð rëng: ada, asm, entry, far, fortran, huge, near, pascal, v mởt số tứ khõa khĂc KHặNG NN trũng vợi tản cĂc hm thữ viằn chuân cừa C NN t tản bián cõ ỵ nghắa, hiu, ngưn gồn NhiÃu bián kiu cõ th khai bĂo trản mởt cƠu lằnh: danh sĂch cĂc bián cĂch bi dĐu phây (,) Chú ỵ: C phƠn biằt chỳ thữớng vợi chỳ hoa Bưt buởc phÊi khai bĂo bián trữợc sỷ dửng Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin hồc cì sð ver.18a 13 / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiºu dú liằu, bián v hơng C: Khai bĂo bián - V½ dư Khai b¡o ìn gi£n: 10 char x; char y , Y; int nSo1 , nSo2 , nSo3 ; float nRate ; Khai b¡o v  khði tÔo: 10 11 char x =65; char y= 'A ', Y =65; int nAge = x44 ; // Chap nhan khoi tao so he hexa int nSo1 = -100 , nSo2 =10 , nSo3 ; float nRate = 1.2; Khai bĂo v tÔo phực tÔp: 10 11 char x= 'A ', X=x +1; // Su dung phep + , X = 66 ( vi 'A ' = 65) int nAge = x44 ; // Chap nhan khoi tao so he hexa int nSo1 =x , nSo2 = nSo1 +2 , nSo3 = nSo1 * nSo2 ; // Phep nhan * double nReal1 = 12.3; float nRate = 1023.4/ nReal1 ; Bi¶n soÔn: PhÔm Vôn Sỹ (PTIT) Tin hồc cỡ s ver.18a 14 / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Kiºu dú li»u, bi¸n v  hơng C: Khai bĂo hơng Thảm tứ khõa (const) trữợc khai bĂo const char x= 'A '; char y= 'A '; y=x +1; // OK printf (" y = %c\n" ,y); x=y ; // NOT OK x=y +1; // NOT OK 10 11 12 const char x; // Mac dinh bang x= 'A '; // NOT OK HOC dòng ch¿ ti·n xû lỵ #define # define MPI 3.14 Biản soÔn: PhÔm V«n Sü (PTIT) Tin håc cì sð ver.18a 15 / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c php toĂn Notes Bián v hơng C: ồc vo giĂ tr cho bián vợi scanf() & l toĂn tỷ a ch, ựng trữợc tản bián  ch án v trẵ bở nhợ m bián ữủc lữu Và cỡ bÊn chuội iÃu khin nh dÔng tữỡng tỹ nhữ vợi printf() I 10 11 12 10 11 12 %d v  %i ch¿ dú liằu vo l số nguyản cõ dĐu; %i cho php nhêp vo dỳ liằu dÔng octal (bưt Ưu bơng 0) hoc hexa (bưt Ưu bơng 0x) int a , b , c , d , e , f , g; float m , n , p ; printf (" Nhap vao so nguyen :\ n" ); scanf ("%d%i %i%i% o%u%x" , &a , &b , &c , &d , &e , &f , &g); printf (" Da nhap vao :\ n" ); printf (" %d\t%i \t%i\ t%i\t %o\t%u \t%x\ n" , a , b , c , d , e , f , g) ; double a , b , c; printf (" Nhap vao so thuc :\ n"); scanf ("% lf % le % lg " , &a , &b , &c) ; printf (" Da nhap vao :\ n" ); printf (" % lf \t% le \t% lg \n" , a , b , c ); printf (" %f\t%f \t%f\ n" , a , b , c); Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin hồc cỡ sð ver.18a 16 / 64 Kiºu dú li»u, bi¸n, biu thực v cĂc php toĂn Notes Bián v hơng C: ồc vo giĂ tr cho bián vợi scanf() Sỷ dửng têp kỵ tỹ tẳm kiám: 10 char b [10]; printf (" Nhap vao mot day nguyen am :\ n"); scanf (" %8[ aeiou ] " , b) ; printf (" Da nhap vao nguyen am % s\n" ,b); Sỷ dửng têp kỵ tỹ loÔi trứ: 10 char b [10]; printf (" Nhap vao mot day khong phai nguyen am :\ n"); scanf (" %8[^ aeiou ]" , b ); printf (" Da nhap vao nguyen am % s\n" ,b); Cho ph²p x¡c nh ở rởng (số lữủng kỵ tỹ) cừa trữớng ồc v o: 10 int x , y; printf (" Hay nhap mot so chu so : "); scanf (" %2 d% d" , &x , & y); printf (" Tuong ung cac so % d va %d \n" ,x , y); Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin håc cì sð ver.18a 17 / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes Bián v hơng C: ồc vo giĂ tr cho bián vợi scanf() Cho php bọ qua mởt số kỵ tü: 10 10 int nMonth , nDate , nYear ; printf (" Nhap thang (mm -dd - yyyy ): "); scanf ("%d -%d -% d" , & nMonth , & nDate , & nYear ); printf (" Hom % d thang % d nam %d\ n" , nDate , nMonth , nYear ) ; int nMonth , nDate , nYear ; printf (" Nhap thang : ") ; scanf ("%d %* c%d %* c%d" , & nMonth , & nDate , & nYear ) ; printf (" Hom % d thang % d nam %d\ n" , nDate , nMonth , nYear ) ; scanf() khæng kiºm tra tẵnh hủp lằ cừa dỳ liằu ngữới sỷ dửng nhêp v o scanf() câ thº sû dưng dú li»u ¢ câ buffer Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin hồc cì sð ver.18a 18 / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes C¡c ph²p to¡n sè håc C¡c ph²p to¡n sè håc hai ngæi: ∗, /, %, +, − I C¡c ph²p to¡n sè hồc (trứ php tẵnh ỗng %) cõ th Ăp dưng cho t§t c£ c¡c kiºu dú li»u cì b£n F Php tẵnh ỗng ch Ăp dửng cho số nguyản Thự tỹ ữu tiản thỹc hiằn: NhƠn chia trữợc, cëng trø sau ((),∗, /, %, +, −, =) I I Náu mực ở ữu tiản thỹc hiằn, s thỹc hiằn tứ trĂi sang phÊi Nản kát hủp vợi dĐu ngoc ()  tông tẵnh ró rng Cõ th kát hủp vợi php gĂn (=): + =, =, ∗ =, / =, % = C¡c to¡n tû t«ng gi£m: + + (), () + +, − − (), () Php chia cĂc số nguyản cho kát quÊ l mởt số nguyản Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin håc cì sð ver.18a 19 / 64 Kiºu dú li»u, bi¸n, biºu thùc v  c¡c ph²p to¡n Notes C¡c ph²p to¡n sè håc: V½ dư 10 11 12 13 14 15 16 17 10 11 12 13 14 15 int x , y =10 , z , t , n , m ; x = y + 10; printf (" y= %d \ nx = %d\n" ,y ,x) ; z = 2* x ; printf (" z= %d \n" ,z ); t=z -5; printf (" t= %d \n" ,t ); n=z /2; printf (" n= %d \n" ,n ); m= t % 4; printf (" m= %d \n" ,m ); float x , y =232.5 , z , t , n; x = y + 10.21; printf (" y= %f \ nx = %f\n" ,y ,x) ; z = y +2.5*( x -102.4) ; printf (" z= %f \n" ,z ); t =( x +5.12) /2.15+27.2; printf (" t= %f \n" ,t ); n =( z +1.25) /2.3+39.16; printf (" n= %f \n" ,n ); Biản soÔn: PhÔm Vôn Sỹ (PTIT) Tin håc cì sð ver.18a 20 / 64 C¡c c§u tróc l»nh i·u khiºn Notes C¡c l»nh l°p: goto 10 11 12 13 14 15 int i =0 , a =0; start : if (i ==0) goto finish ; a +=2; finish : i ++; if (a

Ngày đăng: 01/09/2023, 23:14

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

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

Tài liệu liên quan