logo

Mi a dupla C-ben?

Ebben a témakörben a kettős adattípust tárgyaljuk a C programozási nyelvben. A C nyelv négy fő adattípust biztosít, mint pl int, char, float , és úszó . Az int adattípus egész szám, a char adattípus a karaktertípus, a lebegő adattípus pedig a decimális típusú adatok egyetlen pontosságú tárolására szolgál.

A kettős egy C nyelvű adattípus, amely nagy pontosságú lebegőpontos adatokat vagy számokat tárol a számítógép memóriájában. Dupla adattípusnak nevezik, mert a lebegő adattípushoz képest kétszeres adatméretet képes tárolni. Egy dupla van 8 bájt , ami egyenlő 64 bites méretben. Dupla adattípusban az 1 bit az előjelábrázoláshoz, 11 bit a kitevőhöz és a maradék 52 bit a mantisszához. A dupla tartomány 1,7E-308 és 1,7E+308 között van. A dupla adatok valós számmal (1, 10), tizedesjegyekkel (0,1, 11,002) és mínuszban (-1, -0,00002) ábrázolhatók. Körülbelül 15-16 számjegyet tartalmazhat a tizedesvessző előtt és után.

Például 4,5672, 2,45354, -5,22234, 3,12345678901, 0,15197e-7 stb.

Mi a dupla C-ben

Dupla változó deklarálása és inicializálása

Dupla változó deklarációja: Dupla változó deklarálásához C , meg kell adnunk az adattípust és a változó nevét.

 double data1; 

Dupla változó inicializálása: Egy változó inicializálásához érvényes értéket adhatunk meg egy változónévhez.

 Data1 = 3.2325467; 

Továbbá egy sorban deklarálhatjuk és inicializálhatjuk a változó nevét.

 double data1 = 3.2325467; 

Program az adattípusok méretének meghatározásához a sizeof() függvény segítségével

Nézzünk egy példát az összes adattípus méretének kinyomtatására C programozási nyelven.

sql concat

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

Kimenet:

 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 

A fenti programban a mérete () függvény egy egész szám, float, karakter és dupla adattípusok méretének meghatározásához, amelyek megkerülik az int, char, float és double paramétereket.

Program a lábak mérővé konvertálására a kettős adattípus használatával

Tekintsünk egy példát arra, hogy a kettős adatszámot paraméterként adjuk át egy függvénynek, majd konvertáljuk a lábakat méterekre.

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

Kimenet:

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

Program egész számokat kettős adattípussá konvertál

Tekintsünk egy példát egy int szám átalakítására C-ben dupla adattípusú számmá.

Prog2.c

mi az a számítógép
 #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); } 

Kimenet:

 Convert an int value into double data type is: 3.400000 

Program Celsius-t Fahrenheit hőmérsékletre konvertálni

Tekintsünk egy programot, amely egy adott Celsius-hőmérsékletet Fahrenheitre konvertál C-ban.

Convert.c

ábécé száma
 #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; } 

Kimenet:

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

Program két dupla szám összegének kinyomtatására a függvény segítségével

Tekintsünk egy programot, amely két dupla szám összegét kapja egy C függvény segítségével.

kettős.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 } 

Kimenet:

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

úszó vs dupla

float adattípus: A float egy egyszeres pontosságú adattípus, amely 32 bites lebegőpontos vagy decimális számot tartalmaz, és 4 bájtnak felel meg. Ez egy előre meghatározott adattípus vagy kulcsszó, amelynek jelentése és neve nem módosítható. A lebegő adattípus gyorsabb, mint a duplája, mert tartománya kicsi. Körülbelül 7 számjegyet tartalmazhat. Ezenkívül a lebegő adattípusok tartománya 1,5 x 10-Négy öt3,4x10-re38.

kettős adattípus: A double egy precíziós adattípus, amely 64 bites lebegőpontos vagy decimális számot tartalmaz, és 8 bájtnak felel meg. Ez is egy előre meghatározott adattípus, amelynek jelentése és neve nem módosítható. A float adattípushoz képest lassabb, mert mérete nagy. 15-17 számjegy tárolására alkalmas. A dupla adatok tartománya pedig 5,0 x 10-3. 4. 51,7x10-re308.

Következtetés:

A kettős adattípus kettős pontosságú lebegőmutatós adat. A float adattípushoz képest dupla adatméretet képes tárolni, mivel a dupla 64 bitet foglal el a számítógép memóriájában, ami nagyobb, mint a lebegő adattípus 32 bitje. Általában a számok és a mantisszák hatalmas kiszámításához használják a precíziós gyártmányok érdekében. Sok programozó a kettős adattípust választja, mert ez pontos decimális eredményeket ad komplex számokra.