2017-10-13 107 views
-2
#include<stdio.h> 

int main() 
{ 
    int n = 0, y = 1; 

    y == 1 ? n=0 : n=1; 

    if(n) 
     printf("Yes\n"); 
    else 
     printf("No\n"); 

    return 0; 
} 
+1

'n = y == 1? 0:1;'? –

+0

n =(y == 1)? 0:1;为了可读性。 –

+2

'n = y!= 1'? ;-) – alk

回答

0

?:操作符不像那样工作。你想要做的是一样的东西:

n = ((y == 1) ? 0 : 1); 

在更一般的情况下,如果要执行基于一个条件操作,使用if。 ?:运算符更适合基于条件返回值。