W tym temacie omówimy podwójny typ danych w języku programowania C. Język C udostępnia cztery główne typy danych, takie jak int, char, float , I platforma . Typ danych int służy do przechowywania liczby całkowitej, typ danych char służy do przechowywania typu znakowego, a typ danych float służy do przechowywania danych typu dziesiętnego z pojedynczą precyzją.
A podwójnie to typ danych w języku C, który przechowuje bardzo precyzyjne dane lub liczby zmiennoprzecinkowe w pamięci komputera. Nazywa się to podwójnym typem danych, ponieważ może pomieścić podwójny rozmiar danych w porównaniu z typem danych zmiennoprzecinkowych. Podwójny ma 8 bajtów , co jest równe 64 bity W rozmiarze. W przypadku podwójnego typu danych 1 bit oznacza reprezentację znaku, 11 bitów wykładnika, a pozostałe 52 bity wykorzystywane są jako mantysa. Zakres podwójnych to 1,7E-308 do 1,7E+308. Dane podwójne mogą być reprezentowane w liczbach rzeczywistych (1, 10), ułamkach dziesiętnych (0,1, 11,002) i minusach (-1, -0,00002). Może pomieścić około 15 do 16 cyfr przed i po przecinku dziesiętnym.
Na przykład 4,5672, 2,45354, -5,22234, 3,12345678901, 0,15197e-7 itd.
Deklaracja i inicjalizacja zmiennej podwójnej
Deklaracja podwójnej zmiennej: Aby zadeklarować podwójną zmienną w C , musimy określić typ danych i nazwę zmiennej.
double data1;
Inicjalizacja zmiennej podwójnej: Aby zainicjować zmienną, możemy określić poprawną wartość nazwy zmiennej.
Data1 = 3.2325467;
Ponadto możemy zadeklarować i zainicjować nazwę zmiennej w jednym wierszu.
double data1 = 3.2325467;
Program pobierający rozmiar typów danych za pomocą funkcji sizeof().
Rozważmy przykład drukowania rozmiaru wszystkich typów danych w języku programowania C.
Get_size.c
#include #include void main() { // use sizeof() function to get the size of data type in c printf (' The size of int data type is %d', sizeof(int)); printf (' The size of char data type is %d', sizeof(char)); printf (' The size of float data type is %f', sizeof(float)); printf (' The size of double data type is %f', sizeof(double)); getch() }
Wyjście:
The size of int data type is 4 The size of char data type is 1 The size of float data type is 4 The size of double data type is 8
W powyższym programie używamy a rozmiar (), aby uzyskać rozmiar typów danych całkowitych, zmiennoprzecinkowych, znakowych i podwójnych z pominięciem parametrów int, char, float i double.
Program do konwersji stóp na metry przy użyciu typu danych double
Rozważmy przykład przekazania podwójnej liczby danych jako parametru do funkcji, a następnie przekształcenia stóp w metry.
while pętla Java
Prog.c
#include double feet_to_meter (double f); // declare a user defined function int main() { double feet, cnvt; // declare a variable as the double data type printf (' Enter the feet in double '); scanf('%lf', &feet); cnvt = feet_to_meter(feet); // call feet_to_meter function printf (' Converted feet to meter is: %lf', cnvt); return 0; } // definition of the function double feet_to_meter (double f) { return f / 3.28; }
Wyjście:
Enter the feet in double 45.78 Converted feet to meter is: 13.957317
Program konwertujący dane typu całkowitego na typ danych double
Rozważmy przykład konwersji liczby int na liczbę typu danych double w C.
Prog2.c
#include int main() { int sum = 17, count = 5; double var; var = (double) sum / count; printf (' Convert an int value into double data type is: %lf ', var); }
Wyjście:
Convert an int value into double data type is: 3.400000
Program do konwersji temperatury Celsjusza na Fahrenheita
Rozważmy program konwertujący zadaną temperaturę Celsjusza na Fahrenheita w stopniach C.
Konwertuj.c
#include int main() { // declaration of double variable double c_temp, f_temp; printf(' Enter the temperature in Celsius: '); scanf (' %lf', &c_temp); // accept the Celsius temperature f_temp = ( c_temp * 1.8) + 32; // use conversion formula printf (' The temperature in Fahrenheit is: %lf', f_temp); return 0; }
Wyjście:
zmień nazwę katalogu w systemie Linux
Enter the temperature in Celsius: 56.8 The temperature in Fahrenheit is: 134.240000
Program wyświetlający sumę dwóch liczb podwójnych za pomocą funkcji
Rozważmy program obliczający sumę dwóch liczb podwójnych za pomocą funkcji w języku C.
podwójne.c
#include double sum_num(double p, double q); int main() { // declaration of the double variables double x, y, res; printf (' Enter two double numbers '); scanf(' %lf %lf', &x, &y); // take two double variable from user res = sum_num(x, y); // call double function printf (' The result of two double number is: %lf', res); return 0; } double sum_num(double p, double q) { return p + q; // return the sum of double values }
Wyjście:
Enter two double numbers 34.798 43.567 The result of two double number is: 78.365000
float kontra double
pływający typ danych: Float to typ danych o pojedynczej precyzji, który przechowuje 32-bitową liczbę zmiennoprzecinkową lub liczbę dziesiętną i wynosi 4 bajty. Jest to predefiniowany typ danych lub słowo kluczowe, którego znaczenia i nazwy nie można zmienić. Typ danych float jest szybszy niż double, ponieważ jego zakres jest mały. Może pomieścić około 7 cyfr. Ponadto zakres typów danych float wynosi 1,5 x 10-Cztery pięćdo 3,4x1038.
podwójny typ danych: Double to precyzyjny typ danych, zawierający 64 bity zmiennoprzecinkowe lub liczbę dziesiętną i równy 8 bajtom. Jest to również predefiniowany typ danych, którego znaczenia i nazwy nie można zmienić. Jest wolniejszy w porównaniu do typu danych float, ponieważ ma duży rozmiar. Może pomieścić od 15 do 17 cyfr. A zakres podwójnych danych wynosi 5,0 x 10-3. 4. 5do 1,7x10308.
Wniosek:
Podwójny typ danych to dane zmiennoprzecinkowe o podwójnej precyzji. Może przechowywać dwukrotnie większy rozmiar danych w porównaniu z typem danych float, ponieważ double zajmuje 64 bity w pamięci komputera, czyli więcej niż 32 bity typu danych float. Zwykle jest używany do radzenia sobie z ogromnymi obliczeniami liczb i mantys w celu zapewnienia precyzji. Wielu programistów wybiera podwójny typ danych, ponieważ daje on dokładne wyniki dziesiętne dla liczb zespolonych.