我想用 C 语言编写这个方程,但我不知道如何使用正确的括号。
Eq=sqrt(e^(-((T-thr))/T) ) + (1-a)/4
最佳答案
在 C 语言中,^
运算符不是求幂。相反,在 C 语言中,我们将 ex 写为 exp(x)
。除此之外,你的等式在 C 中是相同的。不过,我会在一些运算符周围放置空格:
Eq = sqrt(exp(-(T - thr) / T)) + (1 - a) / 4;
我假设您的变量(T
、thr
和 a
)是浮点类型 (float
或 double
)。如果它们是整数,您可能想强制编译器使用浮点算术,您可以这样做(例如):
Eq = sqrt(exp(-((double)T - thr) / T)) + (1 - a) / 4.0;
此外... -(T - thr)
与 (thr - T)
相同,因此我们可以简化:
Eq = sqrt(exp((thr - (double)T) / T)) + (1 - a) / 4.0;
并且 (ab)c = ab c,我们可以将其应用于指数的平方根: √(e< support>x) = (ex)1/2 = ex/2。这样我们就可以消除平方根:
Eq = exp((thr - (double)T) / (2 * T))) + (1 - a) / 4.0;
关于c - C中的括号怎么写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30065776/