I think a lot of people look at giving as if they are not receiving something in return. True I suppose the definition of giving means that there is nothing to be received in return, but I disagree.
When one gives something to another, when one helps someone's life become a little easier or a little happier they're not only giving to that person, but giving to all people, themselves included. What you give to another helps them live their life, a life spent producing works or services that others use to improve their own lives. So when one gives to another they are helping that other to produce for others who in turn use that to produce for even more others. Ultimately this makes its way back to the original giver. Giving to others is not a selfless act because there is something to be had in return, it's just not always immediately noticeable, but the reward is there and will find it's way back in due time.