假定变量x,y表示数学式子中的数据,则:(x^2+y^2)/(x-y)的c语言的表达式为?
答案:5 悬赏:20 手机版
解决时间 2021-01-22 03:17
- 提问者网友:相思似海深
- 2021-01-21 12:42
假定变量x,y表示数学式子中的数据,则:(x^2+y^2)/(x-y)的c语言的表达式为?
最佳答案
- 五星知识达人网友:duile
- 2021-01-21 14:13
比较高效的表达式应该是——
double n,x,y;
...
n=x-y;
if(n)
n=x/n*x+y/n*y;
else printf("Error,by 0...");
double n,x,y;
...
n=x-y;
if(n)
n=x/n*x+y/n*y;
else printf("Error,by 0...");
全部回答
- 1楼网友:持酒劝斜阳
- 2021-01-21 18:41
(x*x + y*y)/ (x-y)
- 2楼网友:你哪知我潦倒为你
- 2021-01-21 17:32
调用数学函数,x的2次方表示为pow(x,2),3次方为pow(x,4);依此类推x的n次方为pow(x,n).y的也一样;不过前面得加上
# include
在# include的下一行加
表达式是(pow(x,2) + pow(y,2))/ (x - y)
# include
在# include
表达式是(pow(x,2) + pow(y,2))/ (x - y)
- 3楼网友:你哪知我潦倒为你
- 2021-01-21 16:29
# include
# include
void foo(int x, int y)
{
int result;
if((x-y) != 0)
result = (pow(x,2) + pow(y,2))/ (x - y);
else
result = (int)(((unsigned int)-1)>>1);
printf("%d", result);
}
# include
void foo(int x, int y)
{
int result;
if((x-y) != 0)
result = (pow(x,2) + pow(y,2))/ (x - y);
else
result = (int)(((unsigned int)-1)>>1);
printf("%d", result);
}
- 4楼网友:人间朝暮
- 2021-01-21 15:42
(x*x+y*y) / (x-y); 这个时候需要注意,一般除法结果都有小数点,一般情况下如果要让精确度提高的话往往携程:(x*x+y*y) *1.0/ (x-y);这样的结果会是一个浮点型数据追问答案与问题有什么不同?追答比如x和y都是int型,那么x*x+y*y的结果将是int型,x-y为int型,int / int 的结果为int 型,损失了精度,如果最后将该int强制转换成float一样会损失精度。。应该让 int*0.1,使上面的式子的结果自动转换为float型,float/int的结果为float型,这样保留了精度。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯