1. 程式人生 > >C語言基礎: 浮點數轉化整數(向上取整、向下取整)| 求絕對值函式

C語言基礎: 浮點數轉化整數(向上取整、向下取整)| 求絕對值函式

Objective-C拓展了C,自然很多用法是和C一致的。比如浮點數轉化成整數,就有以下四種情況。 

1.簡單粗暴,直接轉化

float f = 1.5;

int a;a = (int)f;

NSLog("a = %d",a);


輸出結果是1。(int)是強制型別轉化,丟棄浮點數的小數部分。

2.高斯函式,向下取整

float f =1.6;
int a;

a = floor(f);

NSLog("a = %d",a);


輸出結果是1。floor()方法是向下取整,類似於數學中的高斯函式 [].取得不大於浮點數的最大整數,對於正數來說是捨棄浮點數部分,對於複數來說,捨棄浮點數部分後再減1.

3.ceil函式,向上取整。

float f =1.5;
inta;

a = ceil(f);

NSLog("a = %d",a);


輸出結果是2。ceil()方法是向上取整,取得不小於浮點數的最小整數,對於正數來說是捨棄浮點數部分並加1,對於複數來說就是捨棄浮點數部分.

4.通過強制型別轉換四捨五入。

float f = 1.5;

int a;

a = (int)(f+0.5);

NSLog("a = %d",a);

這三個方法容易混淆:
Math.round:如果引數是小數,則求本身的四捨五入。
Math.ceil:如果引數是小數,則求最小的整數但不小於本身. Math.floor:如果引數是小數,則求最大的整數但不大於本身.     同時注意他們的返回型別: long round(double a)   int round(float a)  double ceil(double a)   double floor(double a) 


求絕對值函式

浮點型

標頭檔案:#include <math.h>

fabs() 函式用來求浮點數的絕對值。在TC中原型為:
    float fabs(float x);
在VC6.0中原型為:
    double fabs( double x ); 求絕對值函式

整型

標頭檔案:#include <stdlib.h>

定義函式:int abs (int j);

其中原理非常簡單,所以就不做詳細說明了。

相關推薦

C語言基礎 點數轉化整數向上| 絕對值函式

Objective-C拓展了C,自然很多用法是和C一致的。比如浮點數轉化成整數,就有以下四種情況。  1.簡單粗暴,直接轉化 float f = 1.5; int a;a = (int)f; NSLog("a = %d",a); 輸出結果是1。(int)是強制型別轉化,丟棄浮點數的小數部分。

C/C++去小數位向上與四捨五入

簡單整理一下這四種取整處理方法~ 去小數位取整 (直接截去小數點後的資料) 型別轉換 (浮點型→整型) 當浮點型轉換為整型時,會截去小數點之後的資料,僅保留整數位。 double x=2.3; int y=x; cout<<y; 輸出

C語言基礎整數格式化成其它進制輸出的代碼

基礎 輸出 oct %d 語言 int 資料 stdio.h main 如下的資料是關於C語言基礎:將整數格式化成其它進制輸出的代碼。 #include <stdio.h> int main () { int value = 255; print

C語言基礎遞歸函數,全局(局)變量

否則 fib 語言 factorial 必須 不起作用 聲明 遞歸函數 tor #include <stdio.h>int factorial(int a); int Fibonacci(a);long Hanoi(a); void main(){ } 函

平方根的C語言實現(一) —— 點數的存儲

調整 進制 print 十進制 項目 inf 十分 變量 -1   曾經做一個硬件成本極度控制的項目,因為硬件成本極低,並且還需要實現較高的精度測量,過程中也自己用C語言實現了正弦、余弦、反正切、平方根等函數。   以下,無論是在我的實際項目中還是本地的計算機系統,int都

點數轉化整數

浮點數轉化成整數,就有以下四種情況。  1.直接轉化 #include<stdio.h> int main() { float f = 1.5; int a; a=(int)f; printf("a=%d",a); return

c語言基礎陣列指標

-----------------------------------------------------------------------------------------------------------------------------------------------------------

C語言基礎指標與陣列

        對於上面程式我們需要說明的是int *p = &array[0];表示的是將陣列變數中的第一個元素的地址賦值給指標變數p,而int *p1 = array;的表示的是將陣列變數的值賦值給p指標p21。這兩個語句的結果都是一樣的,這是因為在C語言中陣列變數的值就是這個陣列中第一個元素的地

C語言基礎printf列印基本資料型別彙總

/// data type unsigned char, data length 1 byte typedef unsigned char MS_U8; // 1 byte /// data type unsigned sh

C語言printf(""),點數列印保留有效位數,小數部分的四捨五入

1.printf("%3.0f",floatNum):不保留小數 說明:%3.0f表明待列印的浮點數(floatNum)至少佔3個字元寬,且不帶小數點和小數部分,整數部分至少佔3個位寬; 注意:這裡的3只代表整數部分至少佔3位,捨棄小數點和小數點後面的部分 2.printf

C語言基礎標準輸入與輸出

        在前面內容中我們已經知道了使用printf函式來在標準輸出裝置上顯示一些內容,接下來我們要學習一些其它的輸入輸出函式,讓我們的程式可以通過標準輸入裝置(鍵盤)取得使用者的輸入內容,並在標準輸出裝置(顯示器)上顯示出來。        一、putchar和get

C語言基礎while與do while

        這個程式中while語句的條件表示式為day <= 31也就是說當day的值小於等於31時,程式會迴圈執行大括號中的內容(迴圈體),迴圈體中有兩條語句,第一條語句是執行一個標準輸出,顯示day的值,而第二條語句day++;非常重要,它表示將day的值在原來的基礎上加一,當這條語句執行後,

C語言基礎數組作為函數參數傳遞演示源碼

urn play 內容 arr splay val nts std elements 將做工程過程中常用的內容片段記錄起來,如下內容內容是關於C語言基礎:數組作為函數參數傳遞演示的內容,應該能對小夥伴也有好處。 #include <stdio.h> void

C語言基礎if條件語句使用演示的代碼

條件 好的 eight 使用 朋友 include c語言 == main 學習期間,將寫內容過程較好的內容段備份一下,下邊內容段是關於C語言基礎:if條件語句使用演示的內容,應該是對各位朋友有所用。 #include <stdio.h> void main (

C語言基礎switch語句

        switch右側的小括號中的變數或表達的值的結果是一個確定的值。大括號中可以有多個case語句,case右側的值如果等於switch右側小括號中的值,那麼程式將執行當前case大括號下的內容(case下的大括號可以省略,但建議保留),在大括號中的最後一行需要加入break語句,表示執行完當前條

C語言基礎函式的宣告與定義

        在這一章中我們來學習一下關於函式的定義與使用。關於函式的概念我們可以這樣理解,函式是一個功能的集合,它可以根據輸入完成特寫的功能,並將結果輸出。當然有時候函式只是為了實現一些特寫功能而並不一定要有輸入或輸入。我們想要自己編寫一個函式需要編寫兩部分內容:宣告和

平方根的C語言實現(一) —— 點數的儲存

  曾經做一個硬體成本極度控制的專案,因為硬體成本極低,並且還需要實現較高的精度測量,過程中也自己用C語言實現了正弦、餘弦、反正切、平方根等函式。   以下,無論是在我的實際專案中還是本地的計算機系統,int都是4個位元組且機器為小端,除非特別提及,否則都如此預設。按理fl

C語言基礎延遲執行的代碼

start void c語言基礎 pre 基礎 include 也有 code 語言 下邊代碼段是關於C語言基礎:延遲執行的代碼,希望能對大家也有用。 #include <stdio.h>#include <time.h> int main (voi

C語言基礎篇-數據類型關鍵字

至少 硬件 邏輯結構 內存空間 結構 根據 什麽 操作 自定義 導航:   1. 數據類型   2. 自定義類型   3. 邏輯結構   4. 類型修飾符   5. 雜項 ----->x<------------->x<--------------

python學習筆記點數計算問題20180920

    python輸出過程:一個十進位制數———以二進位制形式(近似值)儲存到計算機———輸出該二進位制近似值的十進位制近似值 舉例:浮點數0.3的二進位制表示 十進位制小數轉二進位制採用"乘2取整,順序排列"法。具體做法是:用2乘十進位制小數,將積的整數