C 庫 - modf() 函式



C 庫函式 modf(double x, double *integer) 返回雙精度浮點數型別的分數部分(小數點後的部分),並將整數部分設定到 integer 指標指向的位置。

語法

以下是 C 庫函式 modf() 的語法:

double modf(double x, double *integer)

引數

此函式接受兩個引數:

  • x − 這是浮點值。

  • integer − 這是指向儲存整數部分的物件的指標。

返回值

此函式返回 x 的分數部分,符號與 x 相同。

示例 1:處理正值

以下是演示 C 庫函式 modf() 的基本程式碼。

#include<stdio.h>
#include<math.h>

int main () {
   double x, fractpart, intpart;

   x = 8.123456;
   fractpart = modf(x, &intpart);

   printf("Integral part = %lf\n", intpart);
   printf("Fraction Part = %lf \n", fractpart);
   
   return(0);
}

輸出

執行上述程式碼後,我們將得到以下結果:

Integral part = 8.000000
Fraction Part = 0.123456 

示例 2:處理負值

下面的程式計算值為 y 的整數部分和小數部分。也可以將此值替換為其他值,例如使用者分配的值。

#include <stdio.h>
#include <math.h>

int main() {

   // Replace with your desired negative value
   double y = -8.64329; 
   double int_part, frac_part;

   frac_part = modf(y, &int_part);

   printf("Original value: %.6lf\n", y);
   printf("Integer part: %.0lf\n", int_part);
   printf("Fractional part: %.6lf\n", frac_part);

   return 0;
}

輸出

執行程式碼後,我們將得到以下結果:

Original value: -8.643290
Integer part: -8
Fractional part: -0.643290
廣告
© . All rights reserved.