Trả lời: Vụ và Cục là những cơ quan, đơn vị thuộc cơ cấu tổ chức của Bộ. 1. Vụ là cơ quan được tổ chức ra để tham mưu giúp Bộ trưởng quản lý Nhà nước về ngành, lĩnh vực thuộc Bộ quản lý. Cơ cấu của Vụ không có phòng, ban (nếu trong trường hợp cần thiết Mucuna pruriens is an annual climbing shrub with long vines that can reach over 15 metres (50 feet) in length. When the plant is young, it is almost completely covered with fuzzy hairs, but when older, it is almost completely free of hairs. The leaves are tripinnate, ovate, reverse ovate, rhombus -shaped or widely ovate. - Bạn chọn Bảng mã là Unicode, Kiểu gõ là Telex như trong hình. Sau đó click vào nút Đóng là xong. - Bây giờ bạn có thể gõ tiếng Việt có dấu trên máy tính Windows của mình nhé. Xem thêm: Cách Chuyển Từ Imessage Sang Tin Nhắn Văn Bản, Gửi Và Nhận Tin Nhắn Văn Bản Trên Iphone * Đối với trình soạn thảo văn bản MS Người ta treo hai quả cầu nhỏ có khối lượng bằng nhau m = 0,01g bằng những sợi dây có độ dài l = 50cm (có khối lượng không đáng kể). Khi hai quả cầu nhiễm điện bằng nhau về độ lớn và cùng dấu, chúng đẩy nhau và cách nhau R = 6cm. Điện tích của mồi quả cầu là A q = 14,5.10-10C B q = 15,5.10-10C C q = 5,5.10-10C D q Chúng xuất hiện dưới dạng hậu tố cho các nốt tự nhiên: Dấu thăng cao hơn nửa cung trong cao độ, trong khi dấu giáng thấp hơn nửa cung. Ví dụ, C♯ là nửa cung cao hơn (hoặc một phím lên) so với C và một D♭ thấp hơn nửa cung (hoặc một phím xuống) so với D. 1.dấu phẩy trong câu: Con tàu chìm dần, nước ngập các bao lơn. Có tác dụng gì? Khoanh vào câu trả lời đúng nhất. a, Ngăn cách bộ phận trạng ngữ với chủ ngữ và vị ngữ. b, Ngăn cách các bộ phận cùng làm vị ngữ trong câu. c, ngăn cách các vế trong câu ghép. XenuJZC. Bài học hôm nay sẽ giới thiệu tới các bạn cách thực hiện các phép toán trong C, các toán tử để xử lý dữ liệu nữa. Nội dung1. Toán tử toán học2. Toán tử quan hệ3. Toán tử luận lý4. Toán tử tăng giảm5. Toán tử gán6. Một số toán tử Toán tử Toán tử lấy kích thước7. Độ ưu tiên của các toán tử 1. Toán tử toán học Ngôn ngữ C cung cấp 5 toán tử toán học cơ bản STT Toán tử Tên Ví dụ Kết quả 1 + Cộng 3 + 4 7 2 – Trừ – 3 3 * Nhân 3 * 2 6 4 / Chia 6 / 3 2 5 % Chia lấy dư 8 % 3 2 Ok. Giờ thử làm ví dụ include int main { int a = 5, b = 7; double c = d = 6; printf"%d + %f = %f \n", a, c, a + c; printf"%d - %d = %d \n", a, b, a - b; printf"%d * %f = %f \n", b, d, b * d; /* Luu y phep chia nhe*/ printf"%d / %d = %d \n", b, a, b / a; printf"%f / %d = %f \n", c, a, c / a; printf"%f / %f = %f \n", c, d, c / d; printf"%d %% %d = %d \n", b, a, b % a; return 0; } Kết quả 5 + = 5 – 7 = -2 7 * = 7 / 5 = 1 / 5 = / = 7 % 5 = 2 Toán tử lấy phần dư % yêu cầu cả hai toán hạng là số nguyên. Nó trả về phần dư còn lại của phép chia. Ví dụ 7 % 5 được tính toán bằng cách chia số nguyên 7 cho 5 để được 1 và phần dư là 2; vì thế kết quả là 2. Thông thường, nếu cả hai toán hạng là số nguyên sau đó kết quả sẽ là một số nguyên. Tuy nhiên, một hoặc cả hai toán hạng là số thực thì sau đó kết quả sẽ là một số thực. Khi cả hai toán hạng của toán tử chia là số nguyên thì sau đó phép chia được thực hiện như là một phép chia số nguyên và không phải là phép chia thông thường mà chúng ta sử dụng. Phép chia số nguyên luôn cho kết quả là phần nguyên của thương. Ví dụ 7 / 5 = 1 chứ không phải 7 / 5 = Để khắc phục lỗi này thì ta có thể chuyển một số hoặc cả 2 số sang kiểu thực rồi thực hiện phép chia. Cách chuyển kiểu hay ép kiểu ta như sau kiểu cần chuyển biến. VD float a; Lưu ý khi ép kiểu thế này thì kiểu của các biến ban đầu không thay đổi mà chỉ là giá trị tức thời tại thời điểm đó thay đổi sang kiểu mới. Để lưu lại giá trị tức thời này bạn cần khai báo thêm một biến mới có kiểu cần chuyển và gán giá trị đó lại. Ví dụ cho dễ. include int main { int a = 5, b = 7; double c; printf"%d / %d = %d \n", b, a, b / a; /* Chuyen gia tri tuc thoi cua b sang kieu so thuc*/ printf"%d / %d = %f \n", b, a, doubleb / a; /* Chuyen gia tri tuc thoi cua a sang kieu so thuc*/ printf"%d / %d = %f \n", b, a, b / doublea; /* Neu lam the nay thi van khong dung, vi b/a duoc so nguyen * sau do chung ta moi ep kieu so nguyen do sang so thuc */ printf"%d / %d = %f \n", b, a, doubleb / a; return 0; } Kết quả 7 / 5 = 1 7 / 5 = 7 / 5 = 7 / 5 = 2. Toán tử quan hệ Ngôn ngữ C cung cấp 6 toán tử quan hệ để so sánh các số. Các toán tử quan hệ có giá trị 1 khi kết quả đúng hoặc 0 khi kết quả sai. STT Toán tử Tên Ví dụ Kết quả 1 == So sánh bằng 5 == 5 1 2 != So sánh khác 5 != 5 0 3 > So sánh lớn hơn 5 > 4 1 4 = So sánh lơn hơn hoặc bằng 5 >= 4 1 6 ’B’ sẽ trả về giá trị 0 vì A’ có mã ASCII là 65 còn B’ là 66. 3. Toán tử luận lý C cung cấp 3 toán tử luận lý cho việc kết nối các biểu thức luận lý. Giống như các toán tử quan hệ, các toán tử luận lý có giá trị là 1 hoặc 0. STT Toán tử Tên Ví dụ Kết quả 1 ! Phủ định ! 5 > 4 0 2 && Và 5 > 4 && 5 > 6 0 3 Hoặc 5 > 4 5 > 6 1 4. Toán tử tăng giảm Các toán tử tăng một ++ và giảm một - - cung cấp các tiện lợi tương ứng cho việc cộng thêm 1 vào một biến số hay trừ đi 1 từ một biến số. include int main { int i, k; i = 5; k = i++; printf"i = %d, k = %d\n", i, k; i = 5; k = ++i; printf"i = %d, k = %d\n", i, k; i = 5; k = i-; printf"i = %d, k = %d\n", i, k; i = 5; k = -i; printf"i = %d, k = %d\n", i, k; return 0; } Kết quả i = 6, k = 5 i = 6, k = 6 i = 4, k = 5 i = 4, k = 4 Tức là ta có ++i và –i thì i được tính trước sau đó sẽ lấy kết quả để thực hiện biểu thức i++ và i– thì i được đưa vào thực hiện biểu thức trước sau đó mới tính i 5. Toán tử gán Toán tử gán được sử dụng để lưu trữ giá trị cho 1 biến nào đó. Toán tử Ví dụ Tương đương với = x = 5 Gán 5 cho x += x += 5 x = x + 5 -= x -= 5 x = x – 5 *= x *= 5 x = x * 5 /= x /= 5 x = x / 5 %= x %= 5 x = x % 5 Chạy test thử nhé. include int main { int x; x = 5; printf"x = 5 => x = %d\n", x; x += 5; printf"x += 5 => x = %d\n", x; x -= 5; printf"x -= 5 => x = %d\n", x; x *= 5; printf"x *= 5 => x = %d\n", x; x /= 5; printf"x /= 5 => x = %d\n", x; return 0; } Kết quả x = 5 => x = 5 x += 5 => x = 10 x -= 5 => x = 5 x *= 5 => x = 25 x /= 5 => x = 5 6. Một số toán tử khác Toán tử phẩy Nhiều biểu thức có thể được kết nối vào cùng một biểu thức sử dụng toán tử phẩy. Toán tử phẩy yêu cầu 2 toán hạng. Đầu tiên nó ước lượng toán hạng trái sau đó là toán hạng phải, và trả về giá trị của toán hạng phải như là kết quả sau cùng. Ví dụ include int main { int m, t; m = t =2, t*5 + 10; printf"t = %d, m = %d\n", t, m; return 0; } Kết quả t = 2, m = 20 Toán tử lấy kích thước C cung cấp toán tử hữu dụng, sizeof, để tính toán kích thước của bất kỳ hạng mục dữ liệu hay kiểu dữ liệu nào. Nó yêu cầu một toán hạng duy nhất có thể là tên kiểu ví dụ, int hay một biểu thức ví dụ, 100 và trả về kích thước của những thực thể đã chỉ định theo byte. Chạy thử ví dụ nhá. Toán tử này chúng ta đã làm quen ở phần Kiểu dữ liệu rồi. Chạy ví dụ test thử include int main { printf"char size = %d byte\n", sizeofchar; printf"short size = %d byte\n", sizeofshort; printf"int size = %d byte\n", sizeofint; printf"long size = %d byte\n", sizeoflong; printf"float size = %d byte\n", sizeoffloat; printf"double size = %d byte\n", sizeofdouble; printf" size = %d byte\n", sizeof printf"\"Hello\" size = %d byte\n", sizeof"Hello"; return 0; } Kết quả char size = 1 byte short size = 2 byte int size = 4 byte long size = 8 byte float size = 4 byte double size = 8 byte size = 8 byte “Hello” size = 6 byte 7. Độ ưu tiên của các toán tử Độ ưu tiên các toán tử được thực hiện từ trên xuống dưới theo bảng sau. Trong mỗi hàng lại có độ ưu tiên như ở cột thứ 3. Loại Toán tử Thứ tự ưu tiên Postfix [] -> . ++ – – Trái sang phải Unary + – ! ~ ++ – – type* & sizeof Phải sang trái Tính nhân * / % Trái sang phải Tính cộng + – Trái sang phải Dịch chuyển > Trái sang phải Quan hệ >= Trái sang phải Cân bằng == != Trái sang phải Phép AND bit & Trái sang phải Phép XOR bit ^ Trái sang phải Phép OR bit Trái sang phải Phép AND logic && Trái sang phải Phép OR logic Trái sang phải Điều kiện ? Phải sang trái Gán = += -= *= /= %=>>= <<= &= ^= = Phải sang trái Dấu phảy , Trái sang phải Bài tập Viết chương trình nhập vào số giây, đổi số giây nhập vào thành dạng “giophutgiay”, mỗi thành phần là một số nguyên có 2 chữ số. VD nhập vào 7826 thì in ra 021026 Cho biến x = 3; Không chạy chương trình, đoán xem giá trị của x sau khi thực hiện lệnh x = ++x – 3 + x; Sau khi đoán xong thì thử viết chương trình để kiểm tra kết quả. Bài viết đăng tại tìm hiểu về mã ký tự trong C. Bạn sẽ học được khái niệm mã ký tự trong C là gì, cách lấy mã ascii của ký tự trong c cũng như cách chuyển từ mã ascii sang ký tự trong C sau bài học ký tự trong C là gìTrong các bài trước chúng ta đã biết, C là một ngôn ngữ bậc cao và nội dung viết trong đó rất giống với cách viết và suy nghĩ của con người. Tuy nhiên thì trong máy tính chỉ có 2 trạng thái tồn tại đó là có dòng điện chạy qua và không có dòng điện chạy qua, tương ứng với 2 số 0 và 1 nên chúng ta cần phải biên dịch chương trình C cho máy tính hiểu cách tương tự, đối với máy tính thì các chữ cái, dấu hoặc chữ số như a, 8, ! mà chúng ta sử dụng trong đời sống hàng ngày đều là ký tự không thể hiểu được. Để máy tính có thể hiểu chúng, con người đã xây dựng những bảng mã ký tự mà trong đó, mỗi ký tự của ngôn ngữ con người sẽ được gán cho một số thứ tự trong bảng mã, và máy tính thay vì đọc ký tự thì sẽ đọc thứ tự của ký tự đó trong bảng mã. Ví dụ như chữ a thì là thứ 1, chữ o thì là thứ 3 chẳng hạn. Và chúng ta gọi các số thứ tự trong bảng mã này theo cách thân mật là mã ký tự trong nữa, giống như có rất nhiều ngôn ngữ trong thế giới loài người thì trong máy tính cũng tồn tại rất nhiều bảng mã ký tự khác nhau, ví dụ như bảng mã ASCII, UTF-8 hay UTF-16 chẳng hạn. Và thứ tự các ký tự của ngôn ngữ loài người trong mỗi bảng mã ký tự này thì có thể khác nhau, dẫn đến cùng một ký tự nhưng mã ký tự của nó trong các bảng mã ký tự là hoàn toàn khác đó, chúng ta cần phải chú ý xem bảng mã ký tự nào đang được sử dụng, khi dùng mã ký tự trong C mã ascii của ký tự trong CASCII là bảng mã ký tự sử dụng các số thập phân từ 0 đến 127 để biểu diễn các ký tự trong bảng chữ cái nhiên chúng ta cũng có thể biểu diễn các số thập phân này dưới nhiều dạng khác nhau, ví dụ như ở dạng bát phân, hoặc thập lục phân chẳng lấy mã ascii của ký tự trong C, tuỳ vào định dạng thập phân, bát phân hay thập lục phân cần lấy mà chúng ta sử dụng hàm in printf với tham số %d thập phân, %o bát phân hoặc %x thập lục phân như sauprintf"%d", char;printf"%o", char;printf"%x", char;Trong đó char là ký tự cần lấy mã ascii trong dụ cụ thể, chúng ta lấy mã ascii của các ký tự ở dạng thập phân và in ra màn hình như sau. Lưu ý ở đây chúng ta sử dụng kết hợp ký tự đặc biệt \n để biểu thị sẽ xuống dòng sau khi in hết một câu.include int mainvoid{ printf"%d\n", 'a'; printf"%d\n", 'b'; printf"%d\n", 'c'; printf"%d\n", 'A'; printf"%d\n", 'B'; printf"%d\n", 'C'; return 0;}Hoặc là mã ascii của các ký tự ở dạng thập lục phân như sauinclude int mainvoid{ printf"%x\n", 'a'; printf"%x\n", 'b'; printf"%x\n", 'c'; printf"%x\n", 'A'; printf"%x\n", 'B'; printf"%x\n", 'C'; return 0;}Chuyển từ mã ascii sang ký tự trong CNgược lại thì chúng ta cũng có thể chuyển từ mã ascii sang ký tự trong C cũng bằng hàm in printf ở trên với cú pháp sau đâyprintf"%c", '\xnum';Trong đó tham số %c là định dạng in có ý nghĩa chỉ định dữ liệu cần in ra ở dạng ký tự, và num trong cụm '\xnum' là mã ascii dưới dạng thập lục phân của ký tự cần gán vào đằng sau cụm \x như dụ cụ thể, chúng ta chuyển từ mã ascii sang ký tự và in ra màn hình như sauinclude int mainvoid{ printf"%c\n", '\x61'; printf"%c\n", '\x62'; printf"%c\n", '\x63'; printf"%c\n", '\x41'; printf"%c\n", '\x42'; printf"%c\n", '\x43'; return 0;}Kết quảabcABCTổng kếtTrên đây Kiyoshi đã hướng dẫn bạn về mã ký tự trong C rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay hãy cùng tìm hiểu những kiến thức sâu hơn về C trong các bài học tiếp Link chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!HOME › lập trình c cơ bản dành cho người mới học lập trình>>05. ký tự và số trong cBài sauXuống dòng trong CBài tiếpKý tự trong C character literal Trong bài này chúng ta sẽ học tới cú pháp lập trình C, mỗi ngôn ngữ đều có cú pháp riêng Syntax, học về cú pháp sẽ giúp các bạn hạn chế được các lỗi Syntax Error. Một lỗi cơ bản mà lập trình viên mới học hay mắc phảiCú pháp lập trình CDấu chấm phẩy ; trong CCú pháp lệnh trong lập trình CLệnh khai báoLệnh gánLệnh thực thiLệnh so sánh và rẽ nhánhLệnh lặpKhoảng trắng trong CComment trong CĐịnh danh Identifier trong CCác từ khóa trong CKếtRelated postsCú pháp là cách bố trí các Token hay từ khóa một cách có ý nghĩa, giúp lập trình viên và máy móc đều có thể hiểu được. Ví như Từ TÔI sẽ được cấu thành từ 3 chữ T Ô T, nhưng sắp xếp thành câu có nghĩa là TÔI là đúng, còn viết là TIÔ thì không có nghĩa gì cảDấu chấm phẩy ; trong CChương trình C, dấu chấm phảy là một phần kết thúc lệnh. Thực tế mỗi lệnh trong C phải kết thúc bởi một dấu chấm phẩy. Nó thông báo phần kết thúc của một thuộc tính dụ dưới đây là 2 đoạn lệnhprintf"Hello, World! \n"; return 0;Cú pháp lệnh trong lập trình CMột lệnh trong lập trình C bao gồm các token, một token có thể là một từ khóa, một định danh, một hằng số, một chuỗi hoặc một ký tự. Có một số kiểu lệnh cơ bản như sauLệnh khai báoLệnh gánLệnh thực thiLệnh so sánh, rẽ nhánhLệnh lặpLệnh khai báoKhai báo những phần tử dùng trong chương trìnhVới tiền xử lý ta có include , defineVới khai báo biến và hằng ta có cấu trúc Kieu_du_lieu Ten_du_lieu;VDint a;//float b;unsigned char c;Chúng ta có thể vừa khai báo và gán giá trị đầu tiên cho biến hoặc hằng như sauint a = 100;float b = gánLà lệnh sao chép dữ liệu từ biến này vào biến kia hoặc gán giá trị vào biến. Cấu trúc là Ten_Bien = Gia_Tri;VDa = 100; //gán giá trị 100 cho aa = b; //gán giá trị b cho aKhi sử dụng lệnh gán, chúng ta lưu ý tới kiểu dữ liệu mà biến đó sử dụng. Nếu 2 biến khác kiểu dữ liệu có thể xảy ra lỗi. Khi đó các bạn cần ép kiểu dữ liệu sẽ học ở bài thực thiLệnh thực thi thực chất là sử dụng các hàm và truyền các tham số vào. Máy tính sẽ thực thi và trả về kết pháp Gia_tri_tra_ve = Ten_HamTham_so_1, Tham_so_2, Tham_so_3.... ;VDprintf"Hello World"; // thực chất là dùng hàm prinf của thư viện Lệnh so sánh và rẽ nhánhChúng ta sẽ học tại bài if, else và cấu trúc rẽ mánhLệnh lặpChúng ta sẽ học tại bài for, while và cấu trúc vòng lặpKhoảng trắng trong CMột dòng có thể chứa khoảng trắng, có thể là những dòng comment, được biết đến như dòng trắng khi cùng được bộ biên dịch bỏ qua khi biên khoảng trắng trong C có thể là một đoạn trống, tab, newline dòng mới hoặc comment. Một khoảng trắng chia một phần của lệnh thành nhiều phần và giúp bộ biên dịch phân biệt một thành phần trong một lệnh, như int , kết thúc thành phần và bắt đầu thành phần tiếp theo như lệnh sauint diemthi;Phải có ít nhất một khoảng trắng ký tự giữa int và diemthi để bộ biên dịch hiểu và phân biệt được khác, xem lệnh dưới đâyluong = luongcoban + phucap; // tinh tong luongKhông cần thiết khoảng trắng giữa luong và dấu =, hoặc giữa dấu = và luongcoban vì các phần tử đã được phân tách với nhau bởi phép trong CChú thích giống như việc trợ giúp trong chương trình C và được bỏ qua bởi bộ biên dịch. Nó bắt đầu với /* và kết thúc với ký tự */ như dưới đây/* Đây là kiểu comment cho nhiểu dòng */ //Dây là kiểu comment cho 1 dòngĐịnh danh Identifier trong CMột định danh trong C là một tên được sử dụng như một biến, hàm và một thành phần được người dùng định nghĩa. Một định danh có thể bắt đầu bởi các ký tự A đến Z, a đến z và dấu gạch dưới _ và số 0 đến không cho phép các dấu như , $, và % trong tên định danh. C là ngôn ngữ phân biệt chữ thường – chữ hoa. Các định danh hợp lệ như saunam hoangminh abc ha_noi a_123 sinhvien _hocphi j d23b5 nhanVienCác từ khóa trong CDưới đây là danh sách các từ khóa được dành riêng trong ngôn ngữ C. Các định danh hay biến, hằng số không thể đặt tên giống các từ khóa dưới đây, nếu không chương trình sẽ báo vọng sau bài này, các bạn đã nắm rõ hơn về cú pháp trong lập trình C. Từ đó viết code ít lỗi hơn, chúng ta sẽ tiếp tục tới bài tiếp theo trong Serie Học lập trình C từ A tới ZNếu thấy có ích hãy chia sẻ bài viết và tham gia nhóm Nghiện Lập Trình để giao lưu và học hỏi nhé. I. Định dạngTrong C, mỗi kiểu dữ liệu có một định dạng dạng bao gồm ký hiệu % phía trước và mã định dạng nằm ngay phía đây là danh sách các định dạng và sự áp dụng của chúng cho các hàm printf và scanfKiểu dữ liệuprintfscanfchar Ký tự đơn single character%c%cChuỗi string%s%sint Số nguyên có dấu signed decimal integer%d%dfloat Dạng dấu chấm thập phân decimal notation%f%f hoặc %edouble Dạng dấu chấm thập phân%lf%lffloat và double Dạng lũy thừa exponential notation%e%f hoặc %efloat và double Hiển thị dạng thu gọn, bỏ đi những số 0 vô nghĩa%gunsign int Số nguyên không dấu unsigned decimal integer%u%uint Số nguyên hệ 16 không dấu - sử dụng “ABCDEF” unsigned hexadecimal integer%x hoặc %X%xint Số nguyên hệ 8 không dấu unsigned octal integer%o%oint Nhập liệu cho số nguyên hệ 8 và hệ 16 xem chi tiết tại ĐÂY%i%ilong double%Lf%LfII. Ký tự đặc biệt\n xuống dòng. Dùng để in ra ký tự xuống dòng ký tự Enter\t tab. Dùng để in ra ký tự Tab\" ký tự nháy kép. Dùng để in ra ký từ nháy kép "\\ xổ trái. Dùng để in ra ký tự xổ trái \%% dấu %. Dùng để in ra ký tự % %III. Bổ từ trong C1. Bổ từ độ rộng trường Dùng để xác định độ rộng là số lượng ký tự dấu cách - space để in ra dữ liệu, áp dụng cho tất cả các loại dữ liệu2. Bổ từ độ chính xác Dùng để để in ra số thực với độ chính xác tương ứng3. Bổ từ - Dùng để canh trái dữ liệu in ra4. Bổ từ 0 Dùng để thay thế cho những ký tự cách thừa bên trái5. Bổ từ l Dùng để xác định định dạng cho các dữ liệu kiểu long như long int6. Bổ từ h Dùng để xác định định dạng cho các dữ liệu kiểu short như short int7. Bổ từ * Nếu người dùng muốn chương trình xác định độ rộng trường thì bổ từ này được sử dụng. Cú pháp để sử dụng bổ từ * như sau printf"%*Định_dạng", Độ_rộng_trường, Giá_trị_muốn_in; . Ví dụ như printf"[%*c]",5,'A'; có nghĩa là dành ra 5 khoảng để in ra ký tự 'A' trong cặp ngoặc vuông, tức là sẽ in ra [ A] .Ví dụinclude int main{ printf"In so 555 theo cac dang khac nhau\n"; printf"Khong co bo tu \n"; printf"[%d]\n",555; //sẽ in ra [555] printf"Su dung bo tu -\n"; printf"[%-d]\n",555; //sẽ in ra [555] printf"Dung bo tu do rong truong do rong la 10\n"; printf"[%10d]\n",555; //sẽ in ra [ 555] printf"Dung bo tu 0\n"; printf"[%0d]\n",555; //sẽ in ra [555] printf"Dung ket hop bo tu 0 va bo tu do rong truong\n"; printf"[%010d]\n",555; //sẽ in ra [0000000555] printf"Ket hop bo tu -, bo tu 0 va bo tu do rong truong\n"; printf"[%-010d]\n",555; //sẽ in ra [555] printf"Su dung bo tu *\n"; printf"[%*d]\n",10,555; //sẽ in ra [ 555] return 0; } Trong bài viết này chúng ta sẽ tìm hiểu các kiểu dữ liệu trong C như Kiểu số thực float, số nguyên int, ký tự char, ... và nhiều kiểu dữ liệu quan trọng viết này được đăng tại không được copy dưới mọi hình thức. C là ngôn ngữ rất khó tính, bạn không thể gán dữ liệu kiểu float cho biến được khai báo kiểu int. Vì vậy khi tạo một biến bạn cần phải xác định rõ là dữ liệu cần lưu là gì để khai báo cho phù hợp. Và sau đây là danh sách data type trong C thường được sử dụng nhất. 1. Bảng các kiểu dữ liệu trong C Trước tiên hãy xem bảng tóm tắt các kiểu dữ liệu cơ bản trong C đã nhé, và chúng ta sẽ lần lượt tìm hiểu từng loại ở các phần tiếp theo. Type Size bytes Format Specifier int 2 -> 4 %d, %i char 1 %c float 4 %f double 8 %lf short int 2 %hd unsigned int 2 -> 4 %u long int 4 -> 8 %ld, %li long long int 8 %lld, %lli unsigned long int 4 %lu unsigned long long int 8 %llu signed char 1 %c unsigned char 1 %c long double 10 -> 16 %Lf 2. Chi tiết kích thước các kiểu dữ liệu trong C Kiểu int Int là chữ viết tắt của Integer, đây là kiểu số nguyên âm hoặc nguyên dương và không có giá trị thập viết này được đăng tại [free tuts .net] Ví dụ 0, 10, -7 là các số nguyên không phải là số nguyên Để khai báo một biến kiểu int thì ta sử dụng cú pháp như sau Ngoài ra ta có thể khai báo nhiều biến liên tiếp như sau Kích thước của kiểu Int thường là 4 bytes 32 bits, tức giao động vào khoảng -2147483648 đến 2147483647. Kiểu float và double Đây là kiểu số thực, dùng để chứa những số có dấu phẩy động. Ví dụ và là những số thực. Dưới đây là cách khai báo biến kiểu số thực float salary; double price; Trong C, số dấu phẩy động cũng có thể được biểu diễn theo cấp số nhân. Ví dụ float normalizationFactor = Câu hỏi đặt ra là sự khác nhau giữa float và double là gì? Về tính chất thì cả hai giống nhau, chỉ khác nhau về kích thước như sau float có kích thước 4 bytes double có kích thước 8 bytes Kiểu char Kiểu char rất đặt biệt, nó dùng để lưu trữ một ký tự bất kì, và ký tự đó phải ở định dạng chuỗi. Vì vậy khi gán giá trị cho nó ta phải dùng dấu nháy để bao quanh ký tự cần gán lại. Ví dụ Kích thước của kiểu char là 1 byte. Kiểu void Đây là kiểu dữ liệu khá đặt biệt, nó có ý nghĩa không là gì cả, thường được dùng trong những function không có giá trị trả về. Vấn đề này chúng ta sẽ học ở những bài tiếp theo nhé. Kiểu short và long Nếu bạn muốn lưu trữ một con số rất lớn và kiểu dữ liệu hiện tại không đáp ứng được thì hãy thêm từ khóa long vào lúc khai báo nhé. Ví dụ long a; long long b; long double c; Còn nếu bạn chắc chắn số nguyên lưu trữ sẽ rất nhỏ nên không cần phải phí phạm kích thước thì hãy sư dụng từ khóa short nhé. Bây giờ chúng ta thử xem kích thước của các kiểu dữ liệu bằng cách dùng hàm sizeof. include int main { short a; long b; long long c; long double d; printf"size of short = %d bytes\n", sizeofa; printf"size of long = %d bytes\n", sizeofb; printf"size of long long = %d bytes\n", sizeofc; printf"size of long double= %d bytes\n", sizeofd; return 0; } Kết quả thu được như sau Trên là danh sách các kiểu dữ liệu thường dùng trong ngôn ngữ C, bạn phải nhớ kích thước và công dụng của từng kiểu để sau này sử dụng cho phù hợp nhé. Ví dụ muốn lưu trữ số nguyên thì dùng kiểu int, số thực thì kiểu float hoặc double, ký tự thì kiểu char. Vẫn còn một số kiểu nâng cao nữa như Mảng, Pointer, Object, nhưng ta sẽ học nó ở những bài nâng cao.

dấu hoặc trong c