0
在C中如何在使用兩種不同數據類型的printf語句中使用條件運算符?我希望下面的代碼每次遇到偶數時不打印任何零而不打印零。我還希望能夠在遇到特定數字時打印字符串。如何使用條件運算符打印整數或字符串值
我試過類型鑄造(字符)列表[我],但會導致不兼容的類型轉換,因爲printf語句需要一個整數。
僅打印奇數值
int fail = 0;
int list[] = {1, 2, 3, -1, 4};
int size = sizeof(list)/sizeof(list[0]);
for(int i = 0; i < size; i++) {
if(list[i] == -1) {
break;
}
printf("%d\n", (list[i] % 2 == 0) ? (i) : (fail));
}
爲什麼不使用'if'語句在相應的'printf'語句之間進行選擇? –
您可以使用相同的'?'運算符在「%s」和「%d」之間作爲格式說明符字符串進行選擇... – bruceg
如何?操作符在格式說明符中工作? – Yawn