在一个array arr中,给定一个值a,要求打印出所有相加等于a的index,比如arr={3,5,2,6},a=11,应该打印出0,2,3和1,3,要求使用c语言实现
时间: 2023-06-19 22:10:21 浏览: 71
用c语言实现打印函数
可以使用两层循环来实现,第一层循环遍历数组,第二层循环从当前元素的下一个元素开始遍历数组,找到相加等于a的两个数的下标即可。
以下是示例代码:
```c
#include <stdio.h>
void findIndexes(int arr[], int size, int a) {
for (int i = 0; i < size; i++) {
for (int j = i + 1; j < size; j++) {
if (arr[i] + arr[j] == a) {
printf("%d,%d\n", i, j);
}
}
}
}
int main() {
int arr[] = {3, 5, 2, 6};
int size = sizeof(arr) / sizeof(arr[0]);
int a = 11;
findIndexes(arr, size, a);
return 0;
}
```
输出结果为:
```
0,2
0,3
1,3
```
阅读全文