A function cannot send one input to more than one distinct output. You can think of this as passing the vertical line test – if you can draw a vertical line which passes through more than one point in a graph, it does not represent a function.
a. Not a function (there are several values of x that are sent to more than one value of y)
b. Not a function (-1 is sent to two different values of y)
c. Function (each value of x is sent to exactly one value of y)
d. Function (though 2 is listed as an input twice, the y-value is the same both times, so it is not sent to two different outputs)
e. Not a function (7 is sent to more than one different value)