じゃあ入門卒業試験の課題としてこれはどうだ。

int match(const char *pattern, const char *string);

patternがstringとマッチするなら0で無い値、マッチしないなら0を返す。

pattern中の文字'?'は任意の1文字とマッチする。
'*'は0文字以上の任意の文字列とマッチする。
それ以外の文字は、その文字自身とマッチする。