define 循环题
#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 次!
我想问大家NUM 为什么是6,不是7啊?
NUM 2*M+1 不是应该是7吗??
求大家了!!
搜索更多相关的解决方案:
define
----------------解决方案--------------------------------------------------------
#define M N+1
相当于用N+1代替M
所以在 #define NUM 2*M+1 用N+1代替M,而不是用(N+1)代替M.
#define NUM 2*M+1 等价于 #define NUM 2*N+1+1 最后NUM为6;
----------------解决方案--------------------------------------------------------
正解,学习
----------------解决方案--------------------------------------------------------
Mum=2*n+1+1....
----------------解决方案--------------------------------------------------------
正确,学习了
----------------解决方案--------------------------------------------------------
谢谢各位了!!
----------------解决方案--------------------------------------------------------
在宏定义中,对变量的应用最好加上括号,这样就不容易出现错误了,
#define N 2
#define M N+1
#define NUM 2*M+1
改为:
#define N 2
#define M (N)+1
#define NUM 2*(M)+1
----------------解决方案--------------------------------------------------------
呵呵,又学到一题了!嘎嘎~~~~~~~~~~~~~~~
----------------解决方案--------------------------------------------------------
楼上上的是
define M (N)+1
还是
define M (N+1)
----------------解决方案--------------------------------------------------------
这个题中一样
不过平时应该是
define M (N)+1
----------------解决方案--------------------------------------------------------