A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© donkey2 中级黑马   /  2014-11-9 17:12  /  869 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 donkey2 于 2014-11-11 12:12 编辑

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
//        NSLog(@"Hello, World!");
         float weight;
         float money;
        NSLog(@"请输入行李的重量");
        scanf("%f",&weight);
        if(weight<= 50)
            money = 0.15 * weight;
       else if(weight > 50)
            money = 0.15 * weight + (weight - 50) * 0.1;
        NSLog(@"行李托运的价格为%.2f",money);

    }
    return 0;
}


遇到的问题,之前运行后用%f输出的结果,后面又很多小数位。
于是想只保留2位小数,于是写的
scanf("%2f",&weight);
NSLog(@"行李托运的价格为%.2f",money);

发现运算的结果不对了,
原因是:scanf 如果写成了%2f,则只保留2位输入的数字。
所以就不对了,应该是这个原因吧。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马