Cクイズ こっちわからん><

/* MyTypeの定義 */

void set(MyType m, int val);
void inc(MyType m);
void print(MyType m);

int main(void)
{
MyType m;
set(m, 0); /* mを0にセット */
inc(m); /* mをインクリメント */
print(m); /* 1と表示される */
return 0;
}

/* 各関数の実装 */

このmain関数が、コメントにある期待通り動くようにMyTypeを定義し、各関数を実装することができるか?
もちろん、mainの中身は変えないこと。そして、使えるのは、C言語の言語要素のみ。

???ポインタを渡せるように構造体をtypedefするのか???