中铁六局华东指挥部:c语言题急!?

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/04 13:44:43
2000 年9月二级C试题有如下程序:
#define N 2
#define M N+1
#define Num 2*M+1
main()
{int i;
for(i=1;i<=Num;i++)
printf("%d\n",i);
}
该程序中的for循环执行的次数为什么是6次而不是7次?
不明白,能说的具体一点吗?谢谢!

因为#define 替换的时候是文本替换
也就是说Num=2*N+1+1=2*2+1+1=6而不是Num=2*(N+1)+1=2*(2+1)+1=7
你应该用#define M (N+1)就对了:-)

1到7是7次

别总想着是7-1=6次

哈哈~!~!

7次没错阿

public static void main(String[] args)
{
for (int i=1;i<=7 ;i++ )
{
System.out.println(i);
}

}

算自己那次了