单项选择题

以下叙述中正确的是______。

A.预处理命令行必须位于 C 源程序的起始位置
B.在 C 语言中,预处理命令行都以"#"开头
C.每个 C 程序必须在开头包含预处理命令行:#include
D.C 语言的预处理不能实现宏定义和条件编译的功能