Cに限らない話だけど、
誤解を恐れずに言うと、「コメントを書かない」

コメントが無いと不安になるコードは、ロジックを見直すようにしてる。
でもまだヘタレなので結構コメント書いちゃうかも。

関数名の命名規則と引数の順番に一貫性を持たせる。

然るべき場所で構造体を使う。

ここからは好み鴨

インデントは原則tab
変数・関数名の長さでインデントの深さが変わるような場合だけスペース使ってる。

構造体はポインタ型を大文字で始まる名前にtypedefする。
typedef struct hoge_t *Hoge;

構造体をクラスとみたときにそのメソッドにあたる関数を作ったら、
第一引数はその構造体のポインタ型で、名前は this にする。
void Hoge_Destroy(Hoge this);