使用 fmod()實(shí)現(xiàn) iOS金額自適應(yīng)小數(shù)點(diǎn)

+ (NSString *)fommatMoney:(NSNumber *)money{

? ? // 判斷是否null 若是賦值為0 防止崩潰

? ? if (([money isEqual:[NSNull null]] || money == nil)) {

? ? ? ? money = @0;

? ? }

? ? CGFloat f = money.floatValue;

? ? if (fmodf(f, 1)==0) {

? ? ? ? //余數(shù)無小數(shù)

? ? ? ? return [NSString stringWithFormat:@"¥%.0f",f];

? ? } else if (fmodf(f*10, 1)==0) {

?????? //money*10的情況下 余數(shù)為0。返回一位小數(shù)

? ? ? ? return [NSString stringWithFormat:@"¥%.1f",f];

? ? } else {

? ? ? ? //余數(shù)為2位及以上小數(shù)返回兩位小數(shù)

? ? ? ? return [NSString stringWithFormat:@"¥%.2f",f];

? ? }

}

C 庫函數(shù) - fmod()

C 庫函數(shù)double fmod(double x, double y)返回x除以y的余數(shù)。

x-- 代表分子的浮點(diǎn)值。

y-- 代表分母的浮點(diǎn)值。

該函數(shù)返回 x/y 的余數(shù)。

演示

- (void)viewDidLoad {
??? [super viewDidLoad];
??? CGFloat a, b;
??? NSInteger c;
??? a = 9.2;
??? b = 10;
??? c = 1;
??? NSLog(@"%f/%ld的余數(shù)是%f\n",a,c, fmod(a, c));
??? NSLog(@"%f/%ld的余數(shù)是%f\n",a,c, fmod(a*10, c));
}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 最先接觸編程的知識(shí)是在大學(xué)里面,大學(xué)里面學(xué)了一些基礎(chǔ)的知識(shí),c語言,java語言,單片機(jī)的匯編語言等;大學(xué)畢...
    oceanfive閱讀 3,416評(píng)論 0 7
  • 在C語言中,五種基本數(shù)據(jù)類型存儲(chǔ)空間長度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來閱讀 4,092評(píng)論 0 2
  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi閱讀 7,872評(píng)論 0 10
  • Lua 5.1 參考手冊(cè) by Roberto Ierusalimschy, Luiz Henrique de F...
    蘇黎九歌閱讀 14,264評(píng)論 0 38
  • 上班后,阿離遇見一個(gè)新同事小章。其實(shí),也不算新,她是阿離同學(xué)的同學(xué)。因?yàn)檫@層關(guān)系,初來乍到的小章,總找阿離聊天,向...
    青心讀書閱讀 546評(píng)論 0 0

友情鏈接更多精彩內(nèi)容