C语言初学者问题,a和b均是正整型变量,正确的switch语句是?

来源:百度知道 编辑:UC知道 时间:2024/09/24 17:17:26
A)switch(pow(a,2)+pow(b,2))
{case 1:case 3:y=a+b;break;
case 0:case5:y=a-b;
}
B)switch(a*a+b*b);
{case 3:
case 1:y=a+b;break;
case 0:y=b-a;break;
}
最好有解释 小生不胜感激

饿....2个有点点出入 一个有case 5;还有个没有...

如果后面那个 case 0:前面加个case :5 这样2个就一样了

B
A中的Power()函数的参数是两个双精度变量,而且返回双精度值 ,表达式:double pow(double x, double y); 所以它返回的不是正整型,所以判断都不正确。

B为正确的;A中因为那个pow中的参数应double型的,自已再书上看下;