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