简单C语言题、不能理解

来源:百度知道 编辑:UC知道 时间:2024/05/19 04:52:35
、#include<stido.h>
#define N 2
#define M N+1
#define NUM (M+1)*M\2
main()
{
int i,n=0;
for(i=1,i<=NUM,i++);
{n++;}
printf("%d",n);
}
输出值是多少

for(int x=0,y=0;!x&&y<=5;y++)
语句执行的次数是多少

请把过程说一下

楼上正解 NUM (M+1)*M\2 这句当中 m+1=4 但是当他遇到×号时不是你想的那样是4*(n+1)而是4×n+1\2 应为define定义的宏 只会简单的将他们运算并不会考虑它的优先级 所以就分开了

4

程序有错,以改正运行:
#include<stdio.h>
#define N 2
#define M N+1
#define NUM (M+1)*M/2
main()
{
int i,n=0;
for(i=1;i<=NUM;i++)
{n++;}
printf("%d",n);
}
结果: 8

for(int x=0,y=0;!x&&y<=5;y++)
循环6次