There should be a penalty but...
First of all, no one can force you to be in a war if you've opted out. There should be a penalty but ONLY IF you leave the clan without using both your attacks. If you have then i don't see any reason why you should be given a penalty, you have done yout part. Also, the penalty should be something like not eligible for war for 2 days. Or maybe just one day, prep day is a pain which will make it 3 :/
You are all thinking SMALL!
First off, I would love a 7 day curse for people that leave clans without attacking that would prevent them going to war again. I thought about the idea several days ago, and then quickly realized how easy it is to get around it. Just like previous people said, they could just drop a single troop and get around it.
What we need is a rating system. When someone leaves the clan, a message pops up just like when you can accept or reject someone wanting to join the clan, but the message will allow you to give them a thumbs up or a thumbs down. It's a simple idea. Of course, I would either like to leave comments or rate them 1-5 on several criteria, but let's keep it simple with a thumbs up or a thumbs down. Now, either the whole clan can vote, or just elders and up, or just the leader and co-leaders. Should everyone be able to vote, the votes should be weighted based on their position in the clan - member votes worth 1, elder worth 2, co and leader worth 3. The final stat would look like 30/60 or 80/100 based the number of people that voted.
Then simply put it on the player's profile. Either keep just the last clan stats until clan rating resets or keep an average for all the clans during say the last season. Perhaps, put the number of clans that rated them too. If they do the average they obviously have to get a common denominator when different size clans vote, ect. So the stat would just say "# of clans X Score of xx/xx."