gpt4 book ai didi

C 三元运算符

转载 作者:行者123 更新时间:2023-11-30 18:54:09 25 4
gpt4 key购买 nike

在学习 C 语言时,我遇到了一些完全让我困惑的事情。

表达式为:

exp(V*log(i))?i%2?s:s--:s++;

如果三元运算符是问题?正:负;我认为它是这样的:

if(pow(i,V)==1&&(i%2)==0)
s--;
else
s++;

但是,s没有进入问题,我应该问第一个表达式是什么意思吗?

该程序运行良好,但我不明白为什么。

原程序是:

main(){
#define V 1

int a, s=0, i;
for(i=1000;i>=0;i--)
exp(V*log(i))?i%2?s:s--:s++;
exp(V*log(i))?printf("%d\t%d\t",-s,i):printf("%d\t%d\t", s,-i);
getch();
}

最佳答案

如果 exp(Vlog(i)) 为 true 则测试是否为奇数 i%2==1 如果为偶数则返回 s-- if exp(Vlog(i )) 为 false 返回 s++如果你这样写就更容易看到:

exp(V*log(i))?(i%2?s:s--):s++;

关于C 三元运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30904865/

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