酷代码 AI
菜单
服务商

c++K博士有编号1~10的10种不同的化学试剂共n瓶。可是现在这n瓶试剂的摆放顺序被人打乱了,所以k博士无法得知每种试剂各有多少瓶。请你设计一个程序,输入每瓶试剂的编号,统计每种试剂的数量并输出吧。 输入: 输入包括两行,第一行包括一个整数n,n不超过1000。第二行有n个整数,分别为每瓶试剂的编号,编号之间用空格隔开。 输出: 输出包括一行,包含10个整数,分别表示每种试剂的数量,中间用空格隔开

```cpp #include <iostream> using namespace std; int main() { int n; cin >> n; // 定义数组用于存储每种试剂的数量,下标 1 - 10 对应试剂编号 1 - 10 int reagentCount[11] = {0}; for (int i = 0; i < n; i++) { int reagentId; cin >> reagentId; // 对应编号的试剂数量加 1 reagentCount[reagentId]++; } for (int i = 1; i <= 10; i++) { cout << reagentCount[i]; if (i != 10) { cout << " "; } } return 0; } ``` 代码解释 1. 输入试剂总瓶数:定义一个整数变量 `n`,使用 `cin >> n;` 读取试剂的总瓶数,`n` 不超过 1000。 2. 初始化计数数组:定义一个长度为 11 的整型数组 `reagentCount`,并将所有元素初始化为 0。数组下标 1 到 10 分别对应试剂编号 1 到 10,用于统计每种试剂的数量。 3. 读取试剂编号并统计数量:使用 `for` 循环读取 `n` 个整数,每个整数代表一瓶试剂的编号。对于每次读取的编号 `reagentId`,将 `reagentCount[reagentId]` 的值加 1,从而统计出对应编号试剂的数量。 4. 输出每种试剂的数量:使用另一个 `for` 循环遍历数组 `reagentCount` 的下标 1 到 10,依次输出每种试剂的数量。除了最后一个数量外,每个数量后面输出一个空格,以符合题目要求的输出格式。 [2025-12-19 20:14:12 | AI问答 | 437点数解答]

相关提问
发财导航,免费问AI
实用工具查看更多