gpt4 book ai didi

c++ - 如何减少 if 语句链?

转载 作者:太空宇宙 更新时间:2023-11-04 14:37:59 27 4
gpt4 key购买 nike

如何减少 C++ 中的 if 语句链?

if(x == 3) {
a = 9876543;
}
if(x == 4) {
a = 987654;
}
if(x == 5) {
a = 98765;
}
if(x == 6) {
a = 9876;
}
if(x == 7) {
a = 987;
}
if(x == 8) {
a = 98;
}
if(x == 9) {
a = 9;
}

这是示例代码。

最佳答案

您可以使用整数除法以数学方式生成此值:

long long orig = 9876543000;
long long a = orig / ((long) pow (10, x));

编辑:
正如@LogicStuff 在评论中指出的那样,从 x 中减去 3 会更加优雅,而不是将 orig 乘以另一个 1000:

long orig = 9876543;
long a = orig / ((long) pow (10, x - 3));

关于c++ - 如何减少 if 语句链?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32540306/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com