浮点数转换为整数四舍五入
Given a float value and we have to round the value to the nearest integer with the help of Macro in C language.
给定一个浮点值,我们必须借助C语言中的Macro将其舍入到最接近的整数。
Macro Definition:
宏定义:
#define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5))
Example:
例:
Input:float val1=10.00f;float val2=10.23f;float val3=10.50f;float val4=10.65f;Output:After round val1=10After round val2=10After round val3=11After round val4=11
Program:
程序:
#include <stdio.h>//Macro#define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5))//Main code int main(void){float val1=10.00f;float val2=10.23f;float val3=10.50f;float val4=10.65f;printf("After round val1=%d\n",round(val1));printf("After round val2=%d\n",round(val2));printf("After round val3=%d\n",round(val3));printf("After round val4=%d\n",round(val4));return 0;}
Output
输出量
After round val1=10After round val2=10After round val3=11After round val4=11
翻译自: /c-programs/define-a-macro-to-round-a-float-value-to-nearest-integer-in-c.aspx
浮点数转换为整数四舍五入