网站建设空间步骤详解免费ip地址代理
1. 题目描述
一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。
编写一个函数找出这两个只出现一次的数字。
例如:
有数组的元素是:1,2,3,4,5,1,2,3,4,6
只有5和6只出现1次,要找出5和6.
2 . 思路
遍历数组,两两相比较。
设置一个标记flag = 1,判断如果两个值内容相等,flag = 0,且跳出本次循环,进行下一次,遍历全部之后,flag =1 的就是值只出现一次的。
注意要跳过自己和自己的比较
3. 代码实现
int main()
{int a[] = { 1,2,3,4,5,1,2,3,4,6 };//这里数组就应该找出5 和6int size = sizeof(a) / sizeof(a[0]);int i = 0;for (i = 0; i < 10; i++){int flag = 1;int j = 0;for (j = 0; j < 10; j++){if (i == j)//跳过自己和自己的元素比较{continue;}if (a[j] == a[i]){flag=0;break;}}if (flag == 1){printf("%d ", a[i]);}}return 0;
}