No, you can refuse to give your address - the only time, AFAIK, that you actually need to give your address is if you buy on credit - i.e. to check that you actually live at that address etc. If you're paying in cash/by card/cheque and they ask for your address, just tell 'em to b*ll*cks.