问题描述
我对C编程很陌生。当前正在执行CS50课程,其中的get_float函数可确保我的用户输入为浮点数。
我使用do while循环来确保输入不是负数,如果是负数,我会再次提示用户输入。
我的问题是,如果用户的输入大于小数点后两位,有没有办法我可以拒绝用户输入,然后重新提示他们输入。
谢谢。
解决方法
get_float是仅适用于CS50的术语。没有办法限制小数点后的长度。
最终,您将切换到scanf,这是在c中获取输入的真正方法,但是请等到到达指针后再对此担心。
在打印数字时使用%.2f,它将减去其他任何小数点。
例如printf(“您的更改是%.2f”,更改)
即使数字为.029,这也将显示.02
如果需要取整,请使用round(change)
例如printf(“您的更改是%.2f”,取整(更改))
这将显示.30
您需要包括