since时间状语有二个意思,一个等于from X time to now. 此时谓语动词必须是持续性动词或静态动词,表示动作或状态从过去持续到现在。这个意思的since状语可以转换为for时间状语。另一个意思是during the time between X and now. 此时谓语动词多为动态动词,表示谓语动作发生在从过去到现在这段时间中的某一个不确切的时间点,该动作并非持续到现在。这种意义的since状语不可以用for时间状语表示。
网友的这个句子中,has left for...为非延续性动词,表示一个事件的发生。如果出题人想表达的意思是:王先生是在五十年前到现在这段时间中的某个不确定的时间点去了澳洲,这个句子就是正确的。如果出题人想表达的意思是:王先生五十年前就去了澳洲,或者王先生去澳洲已经五十年了,那么这个句子就是错句。我猜测出题人想表达的是后一个意思,所以这很可能是错句。