get_float - prompt a user for a float

get_float - prompts user for a line of text from stdin and returns the equivalent float


Header File

#include <cs50.h>


float get_float(string prompt, ...);

#include <cs50.h>

float get_float(const char *format, ...);


This function prompts the user for a float. If the user inputs anything other than a float (or a value that cannot fit in a float), the function prompts the user again.

This function expects at least one argument, prompt. If prompt contains any format codes, a la printf, this function accepts additional arguments as well, one per format code.

Prompts user for a line of text from standard input and returns the equivalent float as precisely as possible; if text does not represent a float or would cause underflow or overflow, user is reprompted.

The prompt is formatted like printf(3).


This function returns the user’s input as precisely as possible as a float.

Returns the float equivalent to the line read from stdin in [FLT_MIN, FLT_MAX), as precisely as possible. If line can’t be read, returns FLT_MAX.


#include <cs50.h>
int main(void) { float f = get_float("Input: "); printf("Output: %f\n", f); }
 * Returns the product of two floats, or FLT_MAX on error.
float multiply_floats(void)
    // read float from stdin
    float f = get_float("Enter a float: ");

    // make sure we read one successfully
    if (f == FLT_MAX)
        return FLT_MAX;

    float g = get_float("What do you want to multiply %f by? ", f);

    if (g == FLT_MAX)
        return FLT_MAX;

    return i * j;


get_char(3), get_double(3), get_int(3), get_long(3),