D là gì trong C, hoặc cụ thể là %d là gì trong ngôn ngữ lập trình c với câu lệnh scanf và printf. Cách sử dụng các lệnh này. Nếu bạn chưa biết thì đừng lo vì hôm nay chúng tôi sẽ giúp bạn giải thích D là gì trong C ngay nhé!
D Là Gì Trong C
Bộ chỉ định định dạng là một chuỗi được hình thành bởi dấu phần trăm ban đầu (%) chỉ ra một mã định dạng, được sử dụng để chỉ định loại và định dạng của dữ liệu sẽ được truy xuất từ luồng và được lưu trữ vào các vị trí được trỏ bởi các đối số bổ sung.

Tóm lại, nó cho chúng ta biết loại dữ liệu nào cần lưu trữ và loại dữ liệu nào cần in.
Ví dụ – Nếu chúng ta muốn đọc và in số nguyên bằng cách sử dụng hàm scanf () và printf (), thì% i hoặc% d được sử dụng nhưng có sự khác biệt nhỏ trong cả định dạng% i và% d.
% d chỉ định số nguyên thập phân có dấu trong khi% i chỉ định số nguyên.
%D Và %I Có Tương Tự Trong Hàm Printf
Không có sự khác biệt giữa các chỉ định định dạng% i và % d trong hàm printf. Hãy xem xét một ví dụ sau đây.

Ví dụ:
// C program to demonstrate
// the behavior of %i and %d
// with printf statement
#include <stdio.h>
int main()
{
int num = 9;
// print value using %d
printf(“Value of num using %%d is = %d\n”, num);
// print value using %i
printf(“Value of num using %%i is = %i\n”, num);
return 0;
}
Đầu ra:
Giá trị của num sử dụng % d là = 9
Giá trị của num sử dụng % i là = 9
%D Và %I Có Sự Khác Biệt Trong Hàm Scanf Không?
% d giả sử cơ số 10 trong khi% i tự động phát hiện cơ sở. Do đó, cả hai chỉ định hoạt động khác nhau khi chúng được sử dụng với một chỉ định đầu vào. Vì vậy, 012 sẽ là 10 với% i nhưng 12 với% d.
% d nhận giá trị nguyên là số nguyên thập phân có dấu, tức là nó nhận giá trị âm cùng với giá trị dương nhưng giá trị phải ở dạng thập phân nếu không nó sẽ in ra giá trị rác.

(Lưu ý: nếu đầu vào ở định dạng bát phân như: 012 thì% d sẽ bỏ qua 0 và lấy đầu vào là 12) Hãy xem ví dụ dưới đây.
% i nhận giá trị số nguyên là giá trị số nguyên với kiểu thập phân, thập lục phân hoặc bát phân. Để nhập giá trị ở định dạng thập lục phân – giá trị phải được cung cấp ở trước “0x” và giá trị ở định dạng bát phân – giá trị phải được cung cấp trước “0”.
Ví dụ:
// C program to demonstrate the difference
// between %i and %d specifier
#include <stdio.h>
int main()
{
int a, b, c;
printf(“Enter value of a in decimal format:”);
scanf(“%d”, &a);
printf(“Enter value of b in octal format: “);
scanf(“%i”, &b);
printf(“Enter value of c in hexadecimal format: “);
scanf(“%i”, &c);
printf(“a = %i, b = %i, c = %i”, a, b, c);
return 0;
}
Đầu ra:
Nhập giá trị của a ở định dạng thập phân: 12
Nhập giá trị của b ở định dạng bát phân: 012
Nhập giá trị của c ở định dạng thập lục phân: 0x12
a = 12, b = 10, c = 18
Giải thích:
Giá trị thập phân của a là 12 là 12
Giá trị thập phân của b là 12 (bát phân) là 10
Giá trị thập phân của c là 12 (thập lục phân) là 18
Ngoài ra chúng ta có thể hiểu thêm về vấn đề này ở ví dụ dưới đây.
Định dạng chỉ định
Trong ngôn ngữ lập trình C,% d và% i là các mã định dạng trong đó% d chỉ định kiểu của biến là số thập phân và% i chỉ định kiểu là số nguyên.
Về khoảng ứng dụng, không có sự khác biệt trong đầu ra của hàm printf () trong khi in một số bằng% d hoặc% i nhưng sử dụng scanf thì sự khác biệt xảy ra.
Hàm scanf () phát hiện cơ sở sử dụng% i nhưng giả sử cơ sở 10 sử dụng% d.
#include <stdio.h>
int main() {
int num1 ,num2;
int num3, num4;
scanf(“%i%d”,&num1 , &num2);
printf(“%i\t%d\n”,num1, num2);
num3 = 010;
num4 = 010;
printf(“%i\t%d”,num3, num4);
return 0;
}
Đầu ra:
32767-498932064
8 8
Ở đây 010 là một số bát phân. scanf đọc số là 10 bằng% d và đọc số là 8 bằng% i. printf đều ổn trong cả hai trường hợp để đọc số dưới dạng bát phân.
Hy vọng qua bài viết trên thì bạn đã biết được D là gì trong C rồi. Nếu thấy bài viết hay và bổ ích đừng quên thường xuyên ghé thăm khoidautuoimoivoidoublemint để đón đọc thêm nhiều bài viết hấp dẫn khác nữa nhé! Chúc các bạn thành công.