单项选择题

软件危机的原因是( )。

A.软件规模的扩大
B.软件结构的复杂
C.大型软件开发以后,无法验证它是否有缺陷
D.软件开发费用越来越高