c语言怎么把找到的数存入数组
时间: 2024-12-23 21:20:50 浏览: 6
c语言实现把文件中数据读取并存到数组中
5星 · 资源好评率100%
在C语言中,将找到的数存储到数组中通常涉及到循环和数组索引操作。假设你想在一个给定范围内寻找特定的数字,并将其存储在一个已知大小的数组里,你可以按照以下步骤操作:
1. 首先,定义一个整型数组`arr`和它的长度`size`,以及你要查找的目标值`target`。
```c
int arr[10]; // 假设数组有10个元素
int size = 10;
int target;
```
2. 确定目标值是否存在。如果你有一个函数`find_number()`可以找出这个值,可以用它来检查并记录下标:
```c
void find_number(int* arr, int size, int target) {
for (int i = 0; i < size; i++) {
if (arr[i] == target) {
// 如果找到,将数组索引入栈或变量保存
found_index = i; // 假设有一个全局变量found_index用于存放索引
}
}
}
```
3. 调用`find_number()`函数并传递数组、大小和目标值:
```c
find_number(arr, size, target);
```
4. 数组中已经存在该目标值的情况,如果需要直接替换或添加,可以在`find_number()`函数内部处理:
```c
if (found_index != -1) {
// 替换或移动其他元素,例如:
memmove(&arr[found_index + 1], &arr[found_index], (size - found_index - 1) * sizeof(int));
arr[found_index] = target;
}
```
5. 最后,如果你想把所有找到的相同数值都存入数组,可能需要遍历整个数组或使用额外的数据结构,因为数组只能存储唯一值。
```c
for (int i = 0; i < size; i++) {
if (arr[i] == target && i != found_index) {
// 可能需要增加一个新的计数器或动态数组,这里仅示例如何存储:
arr[count++] = target; // count记录找到的次数,假设count也已初始化
}
}
```
阅读全文