下面的程序片段所表示的数学函数关系是

来源:百度知道 编辑:UC知道 时间:2024/05/28 02:37:32
-1(x<0)
A) y= 0(x=0)
1(x>0)

1(x<0)
B) y= -1(x=0)
0(x>0)

0(x<0)
C) y= 0(x=0)
1(x>0)

-1(x<0)
D) y= 1(x=0)
0(x>0)

程序:y=-1;
if(x!=0)y=1;
if(x>0)y=1;
else y=0;

请大家帮帮忙!帮答案解释一番,我有点不懂!谢谢!
A)、B)、C)、D)是选项,每个选项都是y= 三个式子,我打不到大括号!

程序:y=-1;
if(x!=0)y=1;
if(x>0)y=1;
else y=0;

转换成标准的格式是:
y=-1;\\将y赋值为-1
if(x!=0){y=1;}\\如果x不等于0,就把y赋值为1
if(x>0){y=1;}else{y=0;}\\如果x大于0,就把y赋值为1,否则把y赋值为0.

分析:
x小于0时,第一个if成功,y=1.第二个失败跳到else,y=0
x等于0时,第一个if失败跳过,第二个也失败跳到else,y=0
x大于0时,第一个if成功,y=1,第二个也成功,y=1

所以
y= 0 (x<0)
y= 0 (x=0)
y= 1 (x>0)

1. x < 0
y = -1;
if(x != 0)//true
y = -1;
if(x > 0)//false
y = 1;
else//true
y = 0;
所以y = 0(x < 0)

2. x = 0
y = -1;
if(x != 0)//false
y = -1;
if(x > 0)//false
y = 1;
else//true
y = 0;
所以y = 0(x = 0)

3. x > 0
y = -1;
if(x != 0)//true
y = -1;
if(x > 0)//true
y = 1;
else//false
y = 0;
所以y = 1(x > 0)