GESP2024年12月认证C++八级( 第一部分选择题(1-5))
选择题1:
#include <iostream>
using namespace std;int main() {// 可用的大写字母数量(去掉O和I)int valid_letters = 26 - 2; // 24 个字母int digits = 10;// 情况一:前4位全是数字int all_digits = digits * digits * digits * digits; // 10^4 = 10000// 情况二:前4位中恰好有1位是字母,其他3位是数字// 选择哪一位是字母:4 种选择// 每种位置放一个字母:24 种// 剩下3位是数字:10^3 = 1000int one_letter = 4 * valid_letters * digits * digits * digits;// 前4位总组合数int total_front = all_digits + one_letter;// 第5位是数字int total = total_front * digits;cout << "符合条件的自编车牌总数为: " << total << endl;return 0;
}
选择题2:
#include <iostream>
using namespace std;// 计算阶乘
int factorial(int n) {int res = 1;for (int i = 2; i <= n; ++i)res *= i;return res;
}int main() {int family_order = factorial(4) / (factorial(2) * factorial(2)); // 4! / (2! * 2!) = 6int internal_order = factorial(3) * factorial(3) * factorial(2) * factorial(2); // 144int start_positions = 10; // 圆桌起点可选10个int total = start_positions * family_order * internal_order;cout << "圆桌合法就座方案总数为: " << total << endl;return 0;
}