Это связано с историческими особенностями русского языка. В старину слово "госпиталь" было заемным из латинского языка, где оно также было мужского рода. С течением времени это слово стало употребляться в русском языке, сохраняя свой мужской род. С другой стороны, слово "больница" образовано от женского существительного "больная", поэтому оно приняло женский род.
Это связано с историческими особенностями русского языка. В старину слово "госпиталь" было заемным из латинского языка, где оно также было мужского рода. С течением времени это слово стало употребляться в русском языке, сохраняя свой мужской род. С другой стороны, слово "больница" образовано от женского существительного "больная", поэтому оно приняло женский род.