可以肯定的是#define和printf都是不是C语言的控制语句,C语言只有九种控制语句printf是一个C标准库函数,函数原型定义在stdio.h。从严格意义上来说,库函数不属于C语言。#define只是一个预处理命令,用来做替换,在编译的时候被展开罢了。
后面带分号的语句,才是c语句,不带分号的,都不算c语句define是预处理命令,严格来说他不属于c语言。另外像a=a+1这种,只算是表达式a=a+1;这种,加了分号的,才属于c的语句(statement)