【c语言】编写一个函数,这个函数可以将一个整数的指定位置1或置0

//  编写一个函数,这个函数可以将一个整数的指定位置1或置0

#include <stdio.h>

int set_bit(int a, int pos, int flag)
{
	int b = 1 << (pos - 1);
	if (flag == 0)
	{
		a &= ~b;
	}
	else
	{
		a |= b;
	}
	return a;
}

int main()
{
	printf("%d\n", set_bit(2, 1, 1));// 3
	printf("%d\n", set_bit(1, 3, 1));// 5
	printf("%d\n", set_bit(-1, 1, 0));//
	return 0;
}

<img src="http://img.blog.csdn.net/20150630155318378?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhhb3lhcWlhbjU1Mg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-12-27 16:38:01

【c语言】编写一个函数,这个函数可以将一个整数的指定位置1或置0的相关文章

【C++】编写一个简单的函数实现重载。

//编写一个简单的函数实现重载. #include <iostream> using namespace std; int max(int a,int b) { return a>b?a:b; } int max(int a,int b,int c) { int x=max(a,b); return max(x,c); } double max(double a,double b) { return a>b?a:b; } int main() { cout<<"

【C语言】编写函数,将一个数的指定位置置0或置1

//编写函数,将一个数的指定位置置0或置1 #include <stdio.h> unsigned int set_bit(unsigned int num, int pos, int flag) { int n = 1; n = n << (pos - 1); //将n的第pos位置1,其它全为0 if (flag == 0) { num = num&(~n); } else if (flag == 1) { num = num | n; } else printf(&q

Swift语言编写一个简单的条形码扫描APP

swift语言编写一个简单的条形码扫描APP 原文地址:appcoda 在处理职员在杂货店的收银台排了很长的队伍,在机场帮助检查背包和旅客,或者在主要的食品供应商,协助处理乏味的存货清单过程,条形码扫描是很简单的处理工具.实际上,他们已经用了这个办法来解决消费者在智能购物,图书分类,等其他目的.因此,让我们来制作一个iPhone版本的条形码扫描工具吧! 对我们来说幸运的是,苹果已经制作了条形码扫描的程序,实现它是一件很简单的事情.我们将要研究进入AV Foundation框架的世界,组建APP,

C语言编写一个&#39;*&#39;金字塔的程序

olj3xg踩系凭珊氏菲<http://weibo.com/LXzpRp/230927982968498303012864> 8e8pxe栏胸俾侔善胶<http://weibo.com/20180414pp/230927983255722881978368> e46952阉友河痹敲呕<http://weibo.com/keMXfnmp/230927983173935224852480> 8fpln0计孪甘摆谱匕<http://weibo.com/20180414p

C语言 编写一个函数,用递归方式求最大公约数。

编写一个函数,传入a,b两个int类型的变量,返回两个值的最大公约数.利用递归方式实现. #include <stdio.h> int gcd(int a,int b) { int tmp; if(a==0 || b==0) return 0; if(a<b) { tmp=a; a=b; b=tmp; } if(a%b==0) return b; else return gcd(b,a%b); } int main() { int num; num=gcd(12,4); printf(&

C语言 编写一个函数reverse_string(char * string)(递归实现) 实现:将参数字符串中的字符反向排列

编写一个函数reverse_string(char * string)(递归实现) 实现:将参数字符串中的字符反向排列. #include <stdio.h> #include <string.h> #include <assert.h> int reverse_string(char * str) { assert(str); int len=strlen(str); char *ch=str+len-1; while(len>1) { char tmp=*st

如何编写一个没有主函数的C程序

From Quora:https://www.quora.com/How-can-I-write-a-C-program-without-a-main-function Question:我如何才能写一个没有主函数的C程序? Answer From Travis Hance: 你可以编译任何一个C程序,无论有没有主函数,或者是一个对象文件(.o文件).只有当你把所有对象文件链接起来,去组成一个可执行文件,你才需要主函数. 如果你想更深入的去了解,你学要知道一些平台特性. 例如在Linux上,一个

用 C 语言编写一个简单的垃圾回收器

人们似乎认为编写垃圾回收机制是很难的,是一种只有少数智者和Hans Boehm(et al)才能理解的高深魔法.我认为编写垃圾回收最难的地方就是内存分配,这和阅读K&R所写的malloc样例难度是相当的. 在开始之前有一些重要的事情需要说明一下:第一,我们所写的代码是基于Linux Kernel的,注意是Linux Kernel而不是GNU/Linux.第二,我们的代码是32bit的.第三,请不要直接使用这些代码.我并不保证这些代码完全正确,可能其中有一些我 还未发现的小的bug,但是整体思路仍

用Java语言编写一个简易画板

讲了三篇概博客的概念,今天,我们来一点实际的东西.我们来探讨一下如何用Java语言,编写一块简易的画图板. 一.需求分析 无论我们使用什么语言,去编写一个什么样的项目,我们的第一步,总是去分析这个项目需要满足怎样的需求. 那么,画板需要满足怎样的需要呢?换句话说,在画板上,我们应该赋予它什么功能呢?从我们熟悉的画板来看,我们需要实现诸如铅笔.橡皮.喷枪.刷子的功能,我们可以画出一些规则的图形,比如直线.矩形.圆.最好我们还能调整画笔的颜色和粗细.以上,我们希望的是,当我们点击一个按钮的时候,我们