No, a C function can only return a single value. However, you can use pointers or structures to achieve a similar effect. Pointers allow a function to modify the value of variables passed as arguments. Structures can be used to group multiple values and return them as a single entity.