单项选择题

一个正确的C语言程序框架,以下哪个选项不是必须的?

A、要有main函数的定义。
B、函数头和函数体不能缺少。
C、main函数体是一个复合语句,要以“{”开始而以“}”结束。
D、必须在main函数之前包含头文件。