花括号的用法---求具体用法(for if前啥时该加啥时不加)
一个问题,一般来说,{可以多加,只要后面对应的{补上去就行了;是这样吗但是有时少加,就会造成结果错误
{int i,j,flag=0;
int k;
for(i=0;i<MAX-5;i++)
{for(j=i+1;j<=i+5;j++) /*如果当前数比后面的5个数都大,则给标志变量flag赋值1*/
{if (a[i]>a[j])
flag=1;
else {flag=0;break;} /*否则给标志变量flag赋值0并退出循环*/
if (a[i]%2==0) /*如果该数是偶数,也给标志变量flag赋值0*/
flag=0;
}
if (flag==1) /*将满足条件的数存入数组b中,并统计满足条件的数的个数*/
{b[cnt]=a[i];cnt++;}
}
for(i=0;i<cnt-1;i++) /*利用选择法对b数组中的元素进行从小到大的排序*/
for(j=i+1;j<cnt;j++)
if (b[i]>b[j])
{k=b[i];b[i]=b[j];b[j]=k;}
}
红色的这2个花括号(及对应的)拿掉,结果就不一样了,整体就错了,什么时候该加什么时候不该加?
[[it] 本帖最后由 cbullet 于 2008-3-16 18:23 编辑 [/it]]