if条件语句组中加入嵌套,else和else if有什么不同?

2024-11-28 01:59:42
推荐回答(2个)
回答1:

#include "stdio.h"

int main()
{
int x,y;
printf("please a number(x):");
scanf("%d",&x);
if (x!=0)
{ if (x>0) y=1;
else if (x<0) y=-1; }
/*这样子也可以,就是没必要. 在这里面只有两种情况,x>0或x<0*/
else y=0;
printf("%d\n",y);
// getch();
return 0;
}

回答2:

在C语言与VC里面,条件语句用的比较多,if与else通常是一起出现,用于表示两种情况,if(a)b;else c;
如果a成立,则执行b,否则执行c。表示只有两种情况出现,a或者!a。
而if后面接else if时,表示不一定只有两种情况。例如if(a)b;else if(c)d;
如果a成立,则执行b,否则如果c成立,则执行d。这种情况存在三种情况:a,!a&c,!a&!c,只是最后一种情况没有执行语句
例如if(a)b;else if(c)d;else m;
如果a成立,则执行b,否则如果c成立,则执行d,否则执行m。有三种情况a,!a&c,!a&!c。