iOS 最有可能用到的数学函数

博客强调基础内容的重要性,介绍了不同数据类型输出方式。还列举了多种数学运算,如开立方根、平方根,整数和浮点数绝对值,求最值、余数,四舍五入等,同时提及iOS随机数rand()、random()、arc4random()的用法。

写在前面,很基础,但是很重要

要求传入的数据类型为long double,那么输出这种类型的数据要用%Lf的方式
要求传入的数据类型为double,那么输出这种类型的数据要用%f的方式
要求传入的数据类型为float,那么输出这种类型的数据要用lf的方式


言归正传,往下看

1.cbrtf()开立方根。例如27的立方根为3。

 

float value = 27;
NSLog(@"cbrtf(27)的值为%.f",cbrtf(value) );

image.png

2.sqrt()开平方根。例如的16平方根为4。

 

float value = 16;
NSLog(@"sqrt(16)的值为%.f",sqrt(value) );

image.png

3.abs() 、labs()整数绝对值

 

    int a = -14;
    int b = -8;
    NSLog(@"\n abs(-14)的值为%d, \n labs(-8)的值为%ld",abs(a),labs(b) );

image.png

4.rand()、random()、arc4random()随机数iOS 随机数rand()、random()、arc4random()用法

 

    srand((unsigned)time(0));// 使用rand()函数,前面要加这句代码。unsigned无符号型,修饰int、char。
    int i = rand() % 10;
    NSLog(@"rand()函数[0,10)出来的随机数为%d",i);

    srandom((unsigned)time(0));// 使用srandom()函数,前面要加这句代码。unsigned无符号型,修饰int、char。
    int j = random() % 20;
    NSLog(@"random()函数[0,20)出来的随机数为%d",j);

    int k = arc4random() % 30 ;
    NSLog(@"arc4random()函数[0,20)出来的随机数为%d",k);

image.png

5.fabs() / fabsf() / fabsl()浮点数绝对值

 

        float a = -17.32;
        float b = -5.21;
        float c = -2.73;
        NSLog(@"\n fabs(-17.32)的值为%f, \n labs(-5.21)的值为%lf \n labs(-2.73)的值为%Lf",fabs(a),fabsf(b),fabsl(c) );

image.png

6.fmax() / fmaxf() / fmaxl()求两个数的最大值

 

NSLog(@"\n fmax(5.2,7.9)的值为%f  \n fmaxl(5.2,7.9)的值为%lf \n fmaxl(5.2,7.9)的值为%Lf \n",fmax(5.2,7.9),fmaxf(5.2,7.9),fmaxl(5.2,7.9));

image.png

7.fmin() / fminf() / fminl()求两个数的最小值

 

NSLog(@"\n fmin(5.2,7.9)的值为%f  \n fminl(5.2,7.9)的值为%lf \n fminl(5.2,7.9)的值为%Lf \n",fmin(5.2,7.9),fminf(5.2,7.9),fminl(5.2,7.9));

image.png

8.fmod() / fmodf() / fmodl()求两数整除后的余数

 

NSLog(@"\n fmodf(9,2)的值为%f  \n fmod(9,2)的值为%lf \n fmodl(9,2)的值为%Lf \n",fmodf(9,2),fmod(9,2),fmodl(9,2));

image.png

9.round() / roundf() / roundl()四舍五入

 

    float a = 99.2983;
    float b = 99.7983;
    float c = 100.2983;
    float d = 100.7983;
    NSLog(@"\n roundf(99.2983)的值为 %.2f,\n roundf(99.7983)的值为 %.2f,\n roundf(100.2983)的值为 %.2f,\n roundf(100.7983)的值为 %.2f",roundf(a),roundf(b),roundf(c),roundf(d));

image.png

ceil() / ceilf() / ceill()向上取整iOS 保留两位小数并且向上取整

 

    float a = 99.2983;
    float b = 99.7983;
    float c = 100.2983;
    float d = 100.7983;
    NSLog(@"\n ceilf(99.2983)的值为 %.2f,\n ceilf(99.7983)的值为 %.2f,\n ceilf(100.2983)的值为 %.2f,\n ceilf(100.7983)的值为 %.2f",ceilf(a),ceilf(b),ceilf(c),ceilf(d));

image.png

floor() / floorf() / floorl()向下取整

 

    float a = 99.2983;
    float b = 99.7983;
    float c = 100.2983;
    float d = 100.7983;
    NSLog(@"\n floorf(99.2983)的值为 %.2f,\n floorf(99.7983)的值为 %.2f,\n floorf(100.2983)的值为 %.2f,\n floorf(100.7983)的值为 %.2f",floorf(a),floorf(b),floorf(c),floorf(d));

image.png

modf() / modff() / modfl()浮点数分解为整数和小数

 

    float a =0.0;
    NSLog(@"\n 7.63的\n 小数部分:modff(7.63, &a) = %.2f, \n 整数部分:a = %.2f",modff(7.63, &a), a);

 


链接:https://www.jianshu.com/p/842fbfe9e2f2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值