看板 C_and_CPP 關於我們 聯絡資訊
int num[5] = {1, 3, 5, 4, 5}; int max = num[0]; int count = 1; int i; for (i = 1; i < 5; i++) { if (num[i] > max) { max = num[i]; count = 1; } else if (num[i] == max) count++; } printf("max %d count %d\n", max, count); 一個 for ?? 改成這樣就不需要 limits.h 嘍 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.169.15.74
ckclark:1 << 31 是故意讓他溢位的嗎 03/23 14:47
visor:不是故意溢位 你要了解 int32 的負極大值是多少就懂了 03/23 14:50
ledia:好習慣請使用 limits.h 的 INT_MIN, 不然其他人容易 confuse 03/23 15:24
ledia:如果將來 INT_MIN 不是 1 << 31, 那程式也得重寫了 03/23 15:25
※ 編輯: visor 來自: 118.169.15.74 (03/23 15:34)