a[]i = 1..100,判斷 (i % 7 == 0) || (i % 11 == 0)。a[count++] = i。if (idx % 5 == 0 && idx != 0) putchar('\n');。#include <stdio.h>
int main() {
int a[100]; // 足夠大,最多 100 個
int count = 0;
// 1. 篩選並存儲
for (int i = 1; i <= 100; i++) {
if (i % 7 == 0 || i % 11 == 0) {
a[count++] = i;
}
}
// 2. 格式化輸出
printf("1-100 中能被 7 或 11 整除的數 (共 %d 個):\n", count);
for (int i = 0; i < count; i++) {
printf("%4d", a[i]); // 寬度 4 對齊
if ((i + 1) % 5 == 0) putchar('\n'); // 每 5 個換行
}
if (count % 5 != 0) putchar('\n'); // 最後補換行
return 0;
}
1-100 中能被 7 或 11 整除的數 (共 22 個):
7 11 14 21 22
28 33 35 42 44
49 55 56 63 66
70 77 84 88 91
98 99
| 考點 | 代碼體現 |
|---|
malloc/realloc 存儲,突破 100 上限。int filter(int *arr, int max, int div1, int div2)。本題綜合考察「條件判斷、數組操作、循環控制、格式化輸出」四大基礎技能。掌握「計數器同步寫入數組」與「模運算控制換行」兩個編程慣用模式,能靈活應對各類篩選輸出問題。