单项选择题

A.预防程序发生错误
B.发现并改正程序错误
C.提供程序诊断信息
D.A、B和C