1. 给定两个整形变量的值,将两个值的内容进行交换。 2. 不允许创建临时变量,交换两个数的内容(附加题) 3. 求10 个整数中最大值。 4. 写一个函数返回参数二进制中 1 的个数
来源:互联网 发布:软件生存周期 过程 编辑:程序博客网 时间:2024/06/05 14:21
1. 给定两个整形变量的值,将两个值的内容进行交换。(允许创建第三个变量)
代码实现:
#include <stdio.h>void Swap1(int x,int y){ int temp = x; x = y; y = temp;}void Swap2(int *px,int *py){ int temp = *px; *px = *py; *py = temp;}int main(){ int a = 15; int b = 20; Swap1(a,b); printf("Swap1: a= %d b= %d\n",a,b); Swap2(&a,&b); printf("Swap2: a= %d b= %d\n",a,b); return 0;}
运行结果:
2. 不允许创建临时变量,交换两个数的内容(附加题)
代码实现:
#include <stdio.h>int main(){ int a = 10; int b = 20; a = a^b;//异或,不同的为1 //00001010 10 a //00010100 20 b //00011110 a //00001010 b 10 //00010100 a 20 b = a^b; a = a^b; printf("a= %d\n",a); printf("b= %d\n",b); return 0;}
运行结果:
3. 求10 个整数中最大值。
函数实现:
#include <stdio.h>int Max(int arr[],int max,int sz){ int i = 0; for(i=1; i<sz; i++) { if(max<arr[i]) max = arr[i]; } return max;}int main(){ int arr[10] = {-1,-8,-9,10,12,19,45,36,156,-2}; int max = arr[0]; int sz = sizeof(arr)/sizeof(arr[0]); int ret = Max(arr,max,sz); printf("max = %d",ret); return 0;}
主函数中直接实现:
#include <stdio.h>int main(){ int arr[10] = {-1,-8,-9,10,12,19,45,36,156,-2}; int max = arr[0]; int sz = sizeof(arr)/sizeof(arr[0]); int i = 0; for(i=1; i<sz; i++) { if(max<arr[i]) max = arr[i]; } printf("max = %d\n",max); return 0;}
运行结果:
4. 写一个函数返回参数二进制中 1 的个数
#include <stdio.h>int count_one_bits(unsigned int value){ int count = 0; while(value) { count++; value = value&(value-1); } return count;}int main(){ int num = -15; int ret = count_one_bits(num); printf("%d\n",count); return 0;}
阅读全文
0 0
- 1. 给定两个整形变量的值,将两个值的内容进行交换。 2. 不允许创建临时变量,交换两个数的内容(附加题) 3. 求10 个整数中最大值。 4. 写一个函数返回参数二进制中 1 的个数
- 1. 给定两个整形变量的值,将两个值的内容进行交换。 2. 不允许创建临时变量,交换两个数的内容(附加题) 3. 求10 个整数中最大值。 4. 写一个函数返回参数二进制中 1 的个数
- 不允许创建临时变量,交换两个数的内容||求10个整数中最大值||求一个函数返回参数二进制中1的个数
- 给定两个整形变量的值, 但是不允许建立临时文件将两个值得内容进行交换。
- 1. 给定两个整形变量的值,将两个值的内容进行交换。
- 给定两个整形变量的值,在不创建临时变量的前提下,交换两个数的内容
- 交换两个变量的值,不创建中间变量。求函数返回参数二进制中 1 的个数
- 不允许创建临时变量,交换两个数的内容
- 不允许创建临时变量,交换两个数的内容
- 不允许创建临时变量,交换两个数的内容
- 不允许创建临时变量,交换两个数的内容
- 不允许创建临时变量,交换两个数的内容
- 不允许创建临时变量,交换两个数的内容
- 不允许创建临时变量,交换两个数的内容
- 不允许创建临时变量,交换两个数的内容
- 不允许创建临时变量,交换两个数的内容
- 不允许创建临时变量,交换两个数的内容
- 不允许创建临时变量,交换两个数的内容。
- Java数组的扩容
- Android网络通信技术之基于HttpURLConnection的POST/GET传值问题
- shell脚本篇一---shell脚本初步
- android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.a
- 模板类tips
- 1. 给定两个整形变量的值,将两个值的内容进行交换。 2. 不允许创建临时变量,交换两个数的内容(附加题) 3. 求10 个整数中最大值。 4. 写一个函数返回参数二进制中 1 的个数
- oracle 包 及 包调用
- Android中include标签的使用及注意事项
- Linux安装MySQL
- android制作sdk,通过SDK调用另一个应用的方法
- Identifiers:标识符
- vxWorks对于当前(正在运行)任务时间片操作小结
- 图像直方图
- 浏览器对象模型