C++程序符号

来源:百度知道 编辑:UC知道 时间:2024/06/23 07:51:24
#include <stdio.h>

int main()
{
int x;
scanf("%d", &x);
printf((x == 2) || (x == 3) || (x == 5) || (x == 7) ? "yes" : "no");
return 0;
}

这个程序里? "yes" : "no"是什么意思啊?

((x == 2) || (x == 3) || (x == 5) || (x == 7) ? "yes" : "no");
这是一个表达式其中用?:(叫做条件运算符)运算符连接起来。

条件?结果1:结果2
运算方式是这样的:
如果条件为真,那么此表达式的值就是结果1;
如果条件为假,那么此表达式的值就是结果2.

因此在你这个表达式中
(x == 2) || (x == 3) || (x == 5) || (x == 7)为真的话
那么printf函数输出的就是yes,否则是no

三目运算符
如果前面的式子为真,则结果为yes,如果为假,则为no

(x == 2) || (x == 3) || (x == 5) || (x == 7) ? "yes" : "no"
(x == 2) || (x == 3) || (x == 5) || (x == 7) 这里任意一个存在就是yes
否则 no
应该没有什么实际的意义吧~