Rule-based functionality in Salesforce rarely allows you to assign things to users, even dynamic user values that are data-driven, for instance the user who is identified as the LastUpdate user or Owner.
There are two ways I could see you accomplishing what you are after, depending on what exactly the underlying goal is.
If you want to always be able to see the Account address information on the Contact, consider using a set of cross-object formula fields in Contact that simply reflect the current Account address info in that record. In this instance, no additional work on the part of the user required. The next time they look at the contact record, the address info will be updated.
If you really want a user to have a task assigned to them, or have some other way to virtually tap them on the shoulder and tell them to look at the contact record, too, you can do what you want with a relatively straightforward trigger. But once you are writing Apex, you have many more options for notifications: task, email, chatter post, UI message message, or just automatically just go to the contact record and update it.
So the answer to your question is, yes, it is possible. But you will need to decide which of these options best suits your requirements.
Best Answer
The approval will show in the Items to approve section for the approver (if you've added into their home page layout). Also an email goes out using the template you've specified.
If you additionally want to assign a task, don't reckon that's possible via workflow which expects a named user. Unless they're on the account or opportunity team https://na1.salesforce.com/help/doc/en/creating_workflow_tasks.htm
Your other alternative is a field update which you use to invoke an apex trigger which can assign that task using your approver__c lookup