max_numは初期化済みとして

if(val >= max_num)
{
  max_num = val;
}

ではだめということなの?