ios中判断一个数是否是整数,是整数那么只显示整数部分。否则显示小数点后面一位

本文介绍了一个简单的C或Objective-C程序片段,演示了如何使用roundf函数对浮点数进行取整,并根据不同情况选择合适的格式化字符串来输出结果。通过具体的示例代码展示了当输入为12.0和12.88888888888时,如何根据数值的不同调整输出格式。

        float num=12.0;

        float i=roundf(num);//对num取整

        if (i==num) {

            lb_fanli.text =[NSStringstringWithFormat:@" %.0fiphone",i];//%.0f表示小数点后面显示0位

        }else{

            lb_fanli.text =[NSStringstringWithFormat:@" %.1fiphone",num];//注意这里是打印num对应的值

        }

        NSLog(@"lb_fanli.text:%@",lb_fanli.text);

打印结果如下:


如果将num改为12.88888888888,那么打印结果如下:


要让 C++ 输出整数时不显示小数点(例如输出 `123` 而不是 `123.0`),你需要确保: - 不输出浮点的小部分(当它是整数时) - 或者直接使用整数类型(如 `int`、`long long`)输出 --- ### ✅ 方法一:根据值判断是否为整数,强制转换为整型输出 ```cpp #include <iostream> #include <cmath> using namespace std; int main() { double values[] = {123.0, 45.6, 78.0, -1.0 / 0.0}; // 包含正常、小、inf for (double val : values) { if (isinf(val)) { cout << (val > 0 ? "1" : "-1") << endl; } else if (isnan(val)) { cout << "0" << endl; } else if (val == trunc(val)) { // 是整数,输出不带小数点 cout << static_cast<long long>(val) << endl; } else { // 不是整数,保留原样输出 cout << val << endl; } } return 0; } ``` --- ### ✅ 方法二:始终输出整数(如果你只关心整数) ```cpp #include <iostream> using namespace std; int main() { int values[] = {123, 45, 78, -1}; for (int val : values) { cout << val << endl; } return 0; } ``` --- ### ✅ 方法三:使用 `std::fixed` 和格式控制避免科学计法,但只输出整数部分 ```cpp #include <iostream> #include <iomanip> #include <cmath> using namespace std; int main() { double values[] = {123.0, 45.6, 78.0}; cout.unsetf(ios::scientific); cout.precision(0); // 设置小为 0 for (double val : values) { cout << val << endl; } return 0; } ``` > ⚠️ 注意:这种方法虽然可以去掉小数点后的,但某些编译器可能会输出 `123.`(带点)。所以推荐使用方法一判断是否为整数后转为整型输出。 --- ###
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值