地特四等申論題
105年
[資訊處理] 程式設計概要
第 null 題
📖 題組:
請將下列式子最後的 y 值計算出來:(每小題 4 分,共 8 分) (一) int x[10] = { 1, 3, 7, 8, 4, -1, 7, 6,-1,6 }, y = 0; while (x[y++] > 0); (二) int x[10] = { 1, 3, 7, 8, 4, -1, 7, 6,-1,6 }, y = 0; while (x[++y/2] > 0);
請將下列式子最後的 y 值計算出來:(每小題 4 分,共 8 分) (一) int x[10] = { 1, 3, 7, 8, 4, -1, 7, 6,-1,6 }, y = 0; while (x[y++] > 0); (二) int x[10] = { 1, 3, 7, 8, 4, -1, 7, 6,-1,6 }, y = 0; while (x[++y/2] > 0);
null
📝 此題為申論題
思路引導 VIP
解此題的首要步驟是弄清楚「後置遞增(y++)」與「前置遞增(++y)」的差異,前者先取值再加一,後者先加一再取值。其次,在 C/C++ 等程式語言中,整數相除(如 ++y/2)會無條件捨去小數,接著只需耐心一步步追蹤陣列索引與迴圈條件直到條件為假即可。
🤖
AI 詳解
AI 專屬家教
【解題關鍵】釐清後置遞增(y++)與前置遞增(++y)之執行順序差異,以及整數除法(int / int)無條件捨去小數的特性。
【解答】
已知陣列內容為:
▼ 還有更多解析內容