问题 单项选择题

有如下程序    #include<iostream.h>    #define N2    #define M N+1    #define NUM 2 * M+1    void main( )    { int i;      for(i=1;i < =NUM;i++)      cout < < i }   该程序中的for循环执行的次数是( )。

A.5

B.6

C.7

D.8

答案

参考答案:B

解析:这是一种简单的情况:不带参数的宏。关键要注意在对2 * M+1进行宏替换时,要将宏名M原样替换,得到NUM的形式为2 * N+l+1(千万不要随意把给N/1加上小括号,使NUM变为2 * (N+1)+1,这就是宏名和变量名之间的区别)。

单项选择题
填空题