📅  最后修改于: 2023-12-03 14:39:40.527000             🧑  作者: Mango
在C语言中,指针是一个重要的概念,它允许程序员直接访问和操作内存地址。对于初学者来说,理解指针的概念和使用方法是很重要的。本文将介绍C语言中的指针基础问题11,并提供相应的代码示例。
问题描述:假设有一个整型数组arr
,里面存储了一些整数。请编写一个函数findDuplicate
,该函数接受一个整型数组和数组的长度作为参数,返回数组中第一个重复出现的元素。如果数组中没有重复元素,则返回-1。
#include <stdio.h>
int findDuplicate(int arr[], int length) {
for (int i = 0; i < length; i++) {
for (int j = i + 1; j < length; j++) {
if (arr[i] == arr[j]) {
return arr[i];
}
}
}
return -1;
}
int main() {
int arr[] = {1, 2, 3, 4, 2, 5, 6};
int length = sizeof(arr) / sizeof(arr[0]);
int result = findDuplicate(arr, length);
printf("The first duplicate element is: %d\n", result);
return 0;
}
上述代码中的findDuplicate
函数使用了嵌套的循环来比较数组中的元素是否有重复出现。首先,外层循环遍历数组的每个元素,然后内层循环从当前元素的下一个位置开始遍历数组,并与外层循环的元素进行比较。如果找到重复元素,则立即返回该元素的值。如果遍历完整个数组后,没有找到重复元素,则返回-1。
在main
函数中,我们声明了一个包含重复元素的整型数组arr
,并计算出数组的长度。然后,我们调用findDuplicate
函数并将数组和长度作为参数传递给它。最后,将返回的结果打印到控制台上。
上述示例代码的运行结果应该为:
The first duplicate element is: 2
这是因为数组中的第一个重复元素是2。
本文介绍了C语言中的指针基础问题11,并提供了相应的代码示例。通过理解和运行示例代码,你可以更好地理解指针的概念和使用方法。希望本文对你的学习有所帮助!