问题:给定一个非空整形数组,除了某个元素只出现一次以外,其余每个元素均出现两次,找出只出现了一次的元素。
例如:int a []={1,2,3,4,5,4,3.2,1}
怎么找出5这个单身狗呢?(5: 你在内涵谁?\(o)/~))
#include <stdio.h>
int main()
{
int arr[]={1,2,3,4,5,4,1,2,3};
int i=0;
int sz=sizeof(arr)/sizeof(arr[1]);
//计算一共有多少元素,其中sizeof(arr)计算的是整个数组的所占空间大小,sizeof(arr【1】)计算的是一个元素的大小,所以两者相除得出 元素 的个数。
for(i=0;i<sz;i++)
{
int count=0; //计算arr【i】在arr数组中出现的次数
int j=0;
for(j=0;j<sz;j++)
{
if(arr[i]==arr[j])
{
count++;
}
}
if(count==1)
{
printf("单身狗:%d\n",arr[i]);
break;//如果找到就跳出循环
}
}
return 0;
}
这样就可以找出单身狗啦!!!!