```c #include <stdio.h> int min(int *p, int n, int *pos) { int minValue = p[0]; // 先假设第一个数就是最小值 *pos = 0; // 初始位置设为 0 for (int i = 1; i < n; i++) { // 从第二个数开始比较 if (p[i] < minValue) { // 如果当前数更小 minValue = p[i]; // 更新最小值 *pos = i; // 更新位置 } } return minValue; // 返回最小值 } ``` 额外注意的逻辑点: 1. 要考虑数组为空的情况,可能需要添加额外的判断。 2. 对于指针的使用要小心,确保不会越界访问数组。 3. 可以考虑添加一些错误处理代码,比如输入的参数不合法的情况。 [2024-12-12 18:13:00 | AI写代码神器 | 209点数解答]