2016-12-15 77 views
-2

如果我有作为条件操作

f1 (int a) 
{ 
    a = a % 2 ? a + 2 : a; 
    printf(”%c ” , ’a’ + a); 
} 

这样的功能,我叫F1(0) 什么是一个2%的条件是什么意思?

+0

'%'=模运算符和整数除法后的余数。 'a = a%2? a + 2:a;'如果a/2有提醒,则展开为a = a + 2 else a' – bansi

+2

为什么代码有奇怪的间距?或者,我应该说,为什么你的代码具有'我想要的'? –

+1

也是怪异的引号'''看起来像启用了自动拼写检查的单词用于代码编辑。 – bansi

回答

1

它检查a是偶数还是奇数。

a % 2除以2a,即0为偶数和1因为奇数后给出的余数。然后使用01作为三元运算符?:中的条件表达式,以将第一个表达式或第二个表达式用作最终表达式结果。