logo

Kas yra dvigubas C?

Šioje temoje aptarsime dvigubą duomenų tipą C programavimo kalba. C kalba pateikia keturis pagrindinius duomenų tipus, pvz int, char, float , ir plūdė . Int duomenų tipas naudojamas sveikajam skaičiui saugoti, char duomenų tipas naudojamas simbolių tipui saugoti, o plūduriuojančių duomenų tipas naudojamas dešimtainio tipo duomenims saugoti vienu tikslumu.

išvalykite npm talpyklą

A dvigubai yra duomenų tipas C kalba, kuris kompiuterio atmintyje saugo didelio tikslumo slankiojo kablelio duomenis arba skaičius. Jis vadinamas dvigubu duomenų tipu, nes gali turėti dvigubą duomenų dydį, palyginti su plūduriuojančiu duomenų tipu. Dvivietis turi 8 baitai , kuris yra lygus 64 bitai dydžio. Dvigubo duomenų tipo atveju 1 bitas žymeniui atvaizduoti, 11 bitų eksponentui ir likę 52 bitai naudojami mantisai. Dvigubo diapazonas yra nuo 1,7E-308 iki 1,7E+308. Dvigubi duomenys gali būti pateikiami realiuoju skaičiumi (1, 10), dešimtainiais (0,1, 11,002) ir minusais (-1, -0,00002). Jame gali būti maždaug 15–16 skaitmenų prieš ir po kablelio.

Pavyzdžiui, 4.5672, 2.45354, -5.22234, 3.12345678901, 0.15197e-7 ir kt.

Kas yra dviguba C

Dvigubo kintamojo deklaravimas ir inicijavimas

Dvigubo kintamojo deklaracija: Norėdami deklaruoti dvigubą kintamąjį C , turime nurodyti duomenų tipą ir kintamojo pavadinimą.

 double data1; 

Dvigubo kintamojo inicijavimas: Norėdami inicijuoti kintamąjį, galime nurodyti galiojančią kintamojo pavadinimo reikšmę.

 Data1 = 3.2325467; 

Be to, mes galime deklaruoti ir inicijuoti kintamojo pavadinimą vienoje eilutėje.

 double data1 = 3.2325467; 

Programa, skirta gauti duomenų tipų dydį naudojant sizeof() funkciją

Apsvarstykime pavyzdį, kaip išspausdinti visų duomenų tipų dydį C programavimo kalba.

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() } 

Išvestis:

 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 

Aukščiau pateiktoje programoje naudojame a dydis () funkcija, skirta gauti sveikojo skaičiaus, float, simbolių ir dvigubų duomenų tipų dydį, aplenkiant int, char, float ir double kaip parametrą.

Programa konvertuoti pėdas į skaitiklį naudojant dvigubą duomenų tipą

Panagrinėkime pavyzdį, kaip funkcijos parametrą perduoti dvigubą duomenų skaičių ir tada paversti pėdas metrais.

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; } 

Išvestis:

 Enter the feet in double 45.78 Converted feet to meter is: 13.957317 

Programa konvertuoti sveikuosius duomenis į dvigubą duomenų tipą

Panagrinėkime pavyzdį, kaip int skaičių konvertuoti į dvigubo duomenų tipo skaičių 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); } 

Išvestis:

 Convert an int value into double data type is: 3.400000 

Programa konvertuoti Celsijaus į Farenheito temperatūrą

Panagrinėkime programą, kuri konvertuoja nurodytą Celsijaus temperatūrą į Farenheitą C.

Konvertuoti.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; } 

Išvestis:

 Enter the temperature in Celsius: 56.8 The temperature in Fahrenheit is: 134.240000 

Programa spausdinti dviejų dvigubų skaičių sumą naudojant funkciją

Panagrinėkime programą, kuri gautų dviejų dvigubų skaičių sumą, naudojant funkciją C.

dvigubas.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 } 

Išvestis:

 Enter two double numbers 34.798 43.567 The result of two double number is: 78.365000 

plūdė prieš dvigubą

plūduriuojančių duomenų tipas: Plūduriavimas yra vieno tikslumo duomenų tipas, kuriame yra 32 bitų slankusis kablelis arba dešimtainis skaičius ir lygus 4 baitams. Tai iš anksto nustatytas duomenų tipas arba raktinis žodis, kurio reikšmės ir pavadinimo pakeisti negalima. Slankiųjų duomenų tipas yra greitesnis nei dvigubai, nes jo diapazonas yra mažas. Jame gali būti maždaug 7 skaitmenys. Be to, slankiųjų duomenų tipo diapazonas yra 1,5 x 10- Keturiiki 3,4x1038.

dvigubas duomenų tipas: Dvigubas yra tikslus duomenų tipas, turintis 64 bitus slankiojo kablelio arba dešimtainio skaičiaus ir lygus 8 baitams. Tai taip pat iš anksto nustatytas duomenų tipas, kurio reikšmės ir pavadinimo keisti negalima. Jis yra lėtesnis, palyginti su plūduriuojančiu duomenų tipu, nes jo dydis yra didelis. Jame gali būti nuo 15 iki 17 skaitmenų. O dvigubų duomenų diapazonas yra 5,0 x 10-3. 4. 5iki 1,7x10308.

Išvada:

Dvigubas duomenų tipas yra dvigubo tikslumo slankiojo žymeklio duomenys. Jame gali būti dvigubai daugiau duomenų, palyginti su slankiųjų duomenų tipu, nes dvigubai užima 64 bitus kompiuterio atmintyje, o tai yra daugiau nei 32 bitai slankiojo duomenų tipo. Paprastai jis naudojamas didžiuliam skaičių ir mantisų skaičiavimui, kad būtų galima tiksliai atlikti. Daugelis programuotojų pasirenka dvigubą duomenų tipą, nes jis pateikia tikslius su dešimtainiu tikslu susijusius kompleksinių skaičių rezultatus.