gpt4 book ai didi

c - 我不知道如何用两个来评估一个表达式?

转载 作者:太空宇宙 更新时间:2023-11-04 01:30:45 24 4
gpt4 key购买 nike

我不确定如何在 while 循环中计算这个表达式。我知道当语句为真时,您执行第一个,而假则执行第二个,但当有两个条件语句时,我应该做什么让我感到困惑。

int x = 152487;
int ct1 = 0;
int ct2 = 0;

while(x > 0)
{ x % 2 ? x > 5 ? ct1++ : ct2++ : ct2++;

x /= 10;
}

printf("ct1: %d\n", ct1);
printf("ct2: %d\n", ct2);

最佳答案

把表达式括起来就清楚了。

x % 2 ? (x > 5 ? ct1++ : ct2++) : ct2++;

如果 x 是奇数,则 x % 2 的计算结果为 true。这意味着上述表达式的值为

(x > 5 ? ct1++ : ct2++)

这又是一个条件表达式。如果 x 是偶数,则表达式的计算结果为

ct2++

关于c - 我不知道如何用两个来评估一个表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22919582/

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