如何获取任何整数,例如10050,并将其输出为$ 100.50?

时间:2016-02-04 02:55:52

标签: c printf

示例:

int amount = 10050;
printf("format_string", amount);
// What should the format string look like to get $100.50 as the output?

是否有可能告诉printf函数我想让一个点放在右边两位数而不做这样的事情:

int amount = 10050;
printf("$%d.%02d", amount / 100, amount % 100); // Output: $100.50

2 个答案:

答案 0 :(得分:5)

您可以将其转换为float,除以100,然后以浮动格式打印。

printf("$%.2f", ((double)amount)/100);

答案 1 :(得分:1)

你应该把它放在功能中:

void printmoney (int amount) {
    printf("$%d.%02d", amount / 100, amount % 100); // Output: $100.50
}

然后你把它称为:

printmoney(10050); // Output: $100.50