Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- integer_and_decimal_part_of_float_number_v3.c
- How can we extract the decimal part of a floating point number ?
- https://stackoverflow.com/questions/499939/how-to-extract-the-decimal-part-from-a-floating-point-number-in-c
- You can find all my C programs at Dragan Milicev's pastebin:
- https://pastebin.com/u/dmilicev
- */
- #include <stdio.h>
- #include <stdlib.h>
- int main(void)
- {
- char s_value[60], s_integral[60], s_fractional[60];
- int i, found = 0, count = 1, integral, fractional;
- sprintf(s_value,"-8.123456");
- for (i = 0; s_value[i] != '\0'; i++)
- {
- if (!found)
- {
- if (s_value[i] == '.')
- {
- found = 1;
- s_integral[i] = '\0';
- continue;
- }
- s_integral[i] = s_value[i];
- count++;
- }
- else
- s_fractional[i - count] = s_value[i];
- }
- s_fractional[i - count] = '\0';
- integral = atoi(s_integral);
- fractional = atoi(s_fractional);
- printf("\n %s \t float number \n", s_value);
- printf("\n %d \t\t integral part \n", integral);
- printf("\n %d \t fraction part\n", fractional);
- return 0;
- } // main()
Add Comment
Please, Sign In to add comment