C program to round of floating point number in one line or single statement

  • Write a program in C to round of floating point number in one line or single statement.
  • How to round of a floating point number to the nearest integer.

For Example:

  • Round of 15.2 = 15
  • Round of 15.8 = 16
  • round of 15.0 = 15

Algorithm to round of floating point numbers
Let N be a floating point number.

  • If N is a positive number, then add 0.5 to N.(T = N + 0.5)
  • If N is a negative number, then subtract 0.5 from N.(T = N – 0.5)
  • Now Type Cast T to integer data type(int).

Round of 15.2 = (int)(15.2 + 0.5) = (int)15.7 = 15
Round of 15.8 = (int)(15.8 + 0.5) = (int)16.3 = 16

C program to round of floating point number in one line

C program to round of floating point number in one line or single statement

# include<stdio.h>
  
int main() {
    float n;
    int round;
  
    printf("Enter a floating point number\n");
    scanf("%f", &n);
     
    round = (int)(n < 0 ? n - 0.5 : n + 0.5);
    printf("Rounded integer : %d", round);
     
    return 0;
}

Output

Enter a floating point number
1.3
Rounded integer : 1

Enter a floating point number
1.8
Rounded integer : 2

C program to round of floating point number using function

C program to round of floating point number using function

# include<stdio.h>
 
int getRoundOf(float N) {
    return (int)(N < 0 ? N - 0.5 : N + 0.5);
}
 
int main() {
    float n;
  
    printf("Enter a floating point number\n");
    scanf("%f", &n);
     
    printf("Rounded integer : %d", getRoundOf(n));
     
    return 0;
}

Output

Enter a floating point number
-1.3
Rounded integer : -1

Enter a floating point number
2.1
Rounded integer : 2