>>470
C++なら例外を使おう。でなければこれではだめかい?
void ending(){/*共通終了処理...*/}
void error(){
    /*エラー処理...*/
    return ending();
}
void func(){
    if(/*エラー発生*/) return error();
    // ...
    for(i=0;i<n;i++)
        if(/*エラー発生*/) return error();
    // ...
    return ending();
}