整理三道基礎算法題的簡潔實現,適合初學者練習循環、條件、嵌套控制結構。
for (i = 100; i < 200; i++) {
for (n = 2; n < i/2; n++) {
if (i % n == 0) break;
}
if (i % n != 0) printf("%d\t", i);
}
優化點:內層循環到 i/2,未用平方根優化。
for (i = 1000; i <= 2000; i++) {
if (i%4==0 && i%100==0 || i%400==0)
printf("%d是閏年\n", i);
else
printf("%d不是閏年\n", i);
}
注意:邏輯 i%4==0 && i%100==0 || i%400==0 有優先級陷阱,正確應為 (i%4==0 && i%100!=0) || i%400==0。原代碼輸出所有年份而非僅閏年。
for (i = 1; i <= 9; i++) {
for (j = 1; j <= 9; j++, n++) {
sum = i * j;
if (n % 9 == 0) printf("\n");
printf("%d\t", sum);
}
}
使用計數器 n 控制換行,輸出 9x9 完整矩陣。
三題涵蓋:雙重循環、條件判斷、計數控制、格式化輸出,是 C 語言控制結構的完美練習套裝。