float fixed[] = {11.31, 12.12, 13.67, 11.91, 12.30, 11.80, 11.00, 12.00};
float variable[] = {1.12, 1.13, 3.14, 1.35, 2.20, 1.28, 1.00, 2.10};
// 產品編號 1~8 對應索引 0~7
#include <stdio.h>
int main() {
float fixed[] = {11.31, 12.12, 13.67, 11.91, 12.30, 11.80, 11.00, 12.00};
float variable[] = {1.12, 1.13, 3.14, 1.35, 2.20, 1.28, 1.00, 2.10};
int id, qty;
printf("輸入產品編號 (1-8) 及數量: ");
if (scanf("%d %d", &id, &qty) != 2) return 1;
if (id < 1 || id > 8 || qty < 0) {
printf("輸入錯誤\n");
return 1;
}
int idx = id - 1;
float total = fixed[idx] + variable[idx] * qty;
printf("產品 %d 總成本: %.2f\n", id, total);
return 0;
}
輸入產品編號 (1-8) 及數量: 3 100
產品 3 總成本: 327.67
// 計算: 13.67 + 3.14 * 100 = 327.67
while (1) {
printf("輸入產品編號 (1-8, 0 結束) 及數量: ");
if (scanf("%d", &id) != 1) break;
if (id == 0) break;
if (scanf("%d", &qty) != 1) break;
// ... 計算並輸出
}
產品編號對應陣列索引只需 idx = id - 1。總成本公式:固定成本 + 變動成本 × 數量。注意輸入驗證與浮點數輸出格式。