当前位置: 首页 > news >正文

无锡网站建设公司百度做网站

无锡网站建设公司,百度做网站,百度营销登录入口,外网如何查看局域网建设的网站目录 1.C语言位运算符表 2.C语言移位运算符详解(配实例作业) 3.C语言&按位与运算符详解 4.C语言|按位或运算符详解 5.C语言^按位异或运算符详解 6.C语言~取反运算符详解 C语言位运算这一章主要介绍C语言位运算符表、C语言移位运算符、C语言&按…

目录

        1.C语言位运算符表

        2.C语言移位运算符详解(配实例作业) 

        3.C语言&按位与运算符详解 

        4.C语言|按位或运算符详解

        5.C语言^按位异或运算符详解

        6.C语言~取反运算符详解 


C语言位运算这一章主要介绍C语言位运算符表、C语言移位运算符、C语言&按位与运算符、C语言|按位或运算符、C语言^按位异或运算符以及C语言~取反运算符。与其他运算符不同,C语言中位运算,顾名思义,是以数值的二进制位为单位进行操作的,包含<<(左移)、>>(右移)、~(按位取反)、&(按位与)、|(按位或)、^(按位异或)共六种运算符。在本章末尾,给大家做了C语言结课设计安排。

1.C语言位运算符表

与其他运算符不同,C语言中位运算,顾名思义,是以数值的二进制位为单位进行操作的,包含<<左移)、>>右移)、~按位取反)、&按位与)、|按位或)、^按位异或)共六种运算符。

功能如下:

左移运算符<<向左(即高位)移位,右侧补0
右移运算符>>向右(即低位)移位,左侧补0
按位取反~如名,即0变1,1变0
按位与&相对应的两个位都为1则为1,反之为0
按位或|相对应的两个位至少有一个为1即为1,反之为0
按位异或^相对应的两个位相同为0,相异(不同)为1

2.C语言移位运算符详解(配实例作业) 

<<>>运算符,通过箭头方向可以很好的辨别,分别是C语言位运算符中的左移运算符右移运算符,如表达式13<<2,它的运算过程为:13的用二进制(四个字节,不考虑符号)表示为,0000 0000 0000 0000 0000 0000 0000 1101,那么向左移两位,右侧补0,则变为0000 0000 0000 0000 0000 0000 0011 0100 换成十进制即变为52,大家可以自行验证。

同理,再举一个例子,如表达式25>>3,表示25的二进制位向右移三位,由0000 0000 0000 0000 0000 0000 0001 1001变为0000 0000 0000 0000 0000 0000 0000 0011,即十进制3。

大家可以自行计算验证,也可以用过代码实现如下:

#include<stdio.h>
int main()
{int a,b;a=13<<2;b=25>>3;printf("a=%d,b=%d\n",a,b);return 0;
}

运行结果如下:

a=52,b=3

移位运算符的作用:

1. 左移N位的本质是乘以2的N次方。

2. 右移N位的本质是除以2的N次方。

题目描述:

读入一个10进制正整数,将其进行二进制表示,取其从右端开始的第4至7位(别忘记是从0开始数的),输出这一部分的10进制表示。

c 语言实现代码 

#include <stdio.h>int main()
{int n;scanf("%d", &n);printf("%d\n", (n >> 4) & 15);return 0;
}

更多相关例题可以私聊我

3.C语言&按位与运算符详解 

按位与运算符&,有点和前面学过的逻辑与(&&)运算符类似,只有一个&,都是同为1则为1。不同的是按位相互运算。如3&5,运算过程如下:

3 0000 0000  0000 0000  0000 0000  0000 0011
5 0000 0000  0000 0000  0000 0000  0000 0101
& ------------------------------------------0000 0000  0000 0000  0000 0000  0000 0001

可以看到3&5的结果即十进制1。

大家可以尝试其他数值实验,代码如下:

#include<stdio.h>
int main()
{int a;a=3&5;printf("a=%d\n",a);return 0;
}

 运行结果如下:

a=1

按位与运算符的作用:

1. 清零:

我们可以对某一个数与0进行按位与运算,由于两个位都为1才为1,因此最终全部位都变为0,起到清零的作用

2. 取指定位:

如某些存储场景下,“第1~3位表示xxxx“”,我们需要取出1~3位,则可以让原数值与数字7进行按位与运算,得到的结果即是原数值的1~3位的值。

3. 判断奇偶:

可以发现,数字的奇偶取决于二进制位的最低一位是1还是0,因此只需要与1按位与运算,判断是1是0即可得知奇偶。

4.C语言|按位或运算符详解

按位或运算符|,同样,它也与我们前面学过的逻辑或运算符类似,只有一个竖线表示,作用位,两个对应的二进制位有一个为1结果即为1。如8|7的运算过程可以如下表示:

8 0000 0000  0000 0000  0000 0000  0000 1000
7 0000 0000  0000 0000  0000 0000  0000 0111
& ------------------------------------------0000 0000  0000 0000  0000 0000  0000 1111

可以看到最终的二进制结果换算成十进制即为15(并不是单纯8+7得来的哦!) 

代码如下:

#include<stdio.h>
int main()
{int a;a=8|7;printf("a=%d\n",a);return 0;
}

运行结果如下:

a=15

按位或运算符的作用:

对一个数字的指定位置为1,如“某个数字的第七位”表示开关,原先是0,需要改为1的状态,即可以将这个数字与64按位或,即可得到第七位变为1,其余位的值依旧不变。

5.C语言^按位异或运算符详解

^表示按位异或运算符,顾名思义,相异,即不同则为1,反之为0。

例如15和16进行异或运算,运算过程如下:

15 0000 0000  0000 0000  0000 0000  0000 1111
16 0000 0000  0000 0000  0000 0000  0001 0000
^ ------------------------------------------0000 0000  0000 0000  0000 0000  0001 1111

可以看到,经过按位异或运算后,其结果变成十进制应为31,大家务必弄清楚运算过程,然后再上机验证,代码如下:

#include<stdio.h>
int main()
{int a;a=15^16;printf("a=%d\n",a);return 0;
}

运算结果如下:

a=31

异或运算符的作用:

1. 指定位数的翻转:

如想对某个数字的低4位进行翻转,则可以将这个数字与15(二进制为00001111)进行按位异或运算,既可以将原数字的低四位进行翻转,即高四位不变,低四位0变1,1变0。

2. 与0异或还是原值:

大家可以自行实验,一个数字与0进行异或,结果还是原值。

3. 交换两个数字:

除了之前我们学习交换两个数字需要第三个变量做中介之外,如今可以通过异或运算进行,代码如下:

#include<stdio.h>
int swap(int *a,int *b)
{if (*a!=*b){*a=*a^*b;*b=*b^*a;*a=*a^*b;}return 0;
}
int main()
{int a=5;int b=5;swap(&a,&b);printf("a=%d b=%d\n",a,b);return 0;
}

 可以看到原先a为3,b为5,运行后得出:

a=5 b=5

6.C语言~取反运算符详解 

~取反运算符,是对数值的二进制位进行取反,是第一个单目运算符,因为只有一个运算对象,运算过程是即0变为1,1变为0,非常好理解。

~1=0
~0=1

大家可以尝试理解下面代码:

#include<stdio.h>
int main()
{unsigned int a=1;printf("~a=%u\n",~a);return 0;
}

为了便于理解,例子代码不考虑符号位,运算结果如下

~a=4294967294

通过学习之前的知识,相信大家已经有所积累,那么下面就进入结课的环节。


结课设计(多选一):
1. 学生信息管理系统
2. 模拟35选7彩票系统
3. 24点、数独小游戏
4. 贪吃蛇游戏
5. 俄罗斯方块
之后会出相关的c语言代码示例

http://www.15wanjia.com/news/37563.html

相关文章:

  • dede网站地图路径修改河南优化网站
  • 信息门户网站建设报价谷歌推广代理公司
  • 网站页面设计需求网站注册
  • 网站首页的动态效果图怎么做南昌百度快速排名提升
  • 电商网站开发的背景搜索引擎网站
  • 哪些作弊网站seo小白入门教学
  • 做网站dreamwa上海seo搜索优化
  • 阿里云搭建多个网站百度智能小程序怎么优化排名
  • 怎样做推广才有效常德网站seo
  • 百度文章收录提交入口seo优化工作内容
  • 做海报的网站知乎一站式营销推广
  • 专业网站建设哪里好seo排名快速
  • 织梦手机网站模板怎么建网站卖东西
  • 广州知名网站世界500强企业
  • 手机制作网站教程百度秒收录
  • 凡科网站建设关键词提取工具
  • 网推网站软文推广平台有哪些
  • 官方网站下载cad合肥关键词排名
  • 做网站配置服务器外贸平台哪个网站最好
  • 腾达企业交换机管理网站宁德市安全教育平台
  • 网站开发英语词汇有没有永久免费crm
  • 网站开发功能需求文档武汉百度推广seo
  • 网站建设 域名注册网络营销的模式有哪些
  • 香港网站服务器市场营销毕业后找什么工作
  • 怎么给网站做性能测试优化网站内容的方法
  • 日本做a的漫画图片视频在线观看网站莆田百度推广开户
  • 都江堰做网站网络广告策划方案
  • 建设一个小说网站要多少钱济南seo外贸网站建设
  • 政务网络及网站建设互联网营销方案
  • 村级网站建设助力脱贫攻坚陕西网站关键词自然排名优化