品牌网站建设费用,怎么管理网站,免费的微网站,常熟有哪些网站建设公司位操作符的几种题型
目录
题型一#xff1a;寻找“单身狗”。
题型二#xff1a;计算一个数在二进制中1的个数
题型三#xff1a;不允许创建临时变量#xff0c;交换两个整数的内容
题型一#xff1a;寻找“单身狗”。
1.1题目解析 在一个整型数组中#xff0c;只有…位操作符的几种题型
目录
题型一寻找“单身狗”。
题型二计算一个数在二进制中1的个数
题型三不允许创建临时变量交换两个整数的内容
题型一寻找“单身狗”。
1.1题目解析 在一个整型数组中只有一个数字出现一次其他数组都是成对出现的请找出那个只出现一次的数字。 例如 数组中有1 2 3 4 5 1 2 3 4只有5出现一次其他数字都出现2次找出5 1.2函数实现
int FindDog(int arr[], int sz)
{int m arr[0];for (int i 1; i sz; i){m ^ arr[i];}return m;
}1.3实际代入
#includestdio.h
#includestdlib.h
int FindDog(int arr[], int sz)
{int m arr[0];for (int i 1; i sz; i){m ^ arr[i];}return m;
}
int main()
{int arr[] { 1,1,2,3,4,5,2,3,4 };int sz sizeof(arr) / sizeof(arr[0]);printf(%d, FindDog(arr, sz));return 0;
}1.4运行结果举例 题型二计算一个数在二进制中1的个数
2.1题目解析 写一个函数返回参数二进制中 1 的个数。 比如 15 0000 1111 4 个 1 2.2函数实现
int Count(int n)
{int count 0;while (n){n n (n - 1);count;}return count;
}2.3实际代入
#includestdio.h
int Count(int n)
{int count 0;while (n){n n (n - 1);count;}return count;
}
int main()
{int n 0; scanf(%d, n);printf(%d\n, Count(n));return 0;
}2.4运行结果举例 题型三不允许创建临时变量交换两个整数的内容
3.1题目解析 不允许创建临时变量交换两个整数的内容 例如输入 5 3 输出 3 5 3.2代码实现
#includestdio.h
int main()
{int a 0;int b 0;scanf(%d %d, a, b);a a ^ b;b a ^ b;a a ^ b;printf(%d %d, a, b);return 0;
}3.3运行结果举例