Cヤダ。

型周りの文法が腐ってる。特にポインタが前置なあたり。

それから配列。
サイズ変更できないのはともかくとして、
「配列にしたい型のサイズ」も
「配列のサイズ」もコンパイル時に分かってないといけないし。
解決策が動的メモリ確保しかないってのはどうかと。
やっぱり型周りがややこしいし。配列の配列と、ポインタの配列の違いなんてあんまり説明したくない。

代入が値を持つのに、ifやswitchが値を持たないのも解せない。
かといって三項演算子は見づらいし。

ブロックの先頭でしか変数宣言できないのもヤダ。
宣言場所と使い始める場所が無駄に離れてると分かりづらいだけ。

関数で値返し忘れても、printfの引数の数間違えても、
コンパイルエラーにならないし。

constなポインタ渡したところで、その先の先まではread onlyにならないし。


とりあえず、Cはアセンブラの前準備以外にはおすすめしません。