18. He has had some soup for lunch today.
Речь идёт о действии, произошедшем сегодня (период ещё не завершён), поэтому используем Present Perfect. Правильная форма глагола have в Present Perfect — has had (первое has - вспомогательный глагол, второе had - основной глагол "иметь").