移位和数组学习笔记

移位
左移<< 右移>>
循环左移_crol_(m,n); 循环右移_cror_(m,n);

位左移运算符<<
将一个数的各位顺序左移若干位(左移运算中,高位移出舍弃不用,低位补零)。如:int a=15(即00001111) a=a<<1;将变量a的各位左移1位后,变成00011110,即a=30(相当于乘2)。

位右移运算符>>
将一个数的各位顺序右移若干位。
如:int a=15(00001111);a=a>>2;将变量a的各位右移2位,右移2位后变成00000011,即a=3,相当于除22。注:右移运算中,低位移出舍弃不用,对无符号数:高位补0;对有符号数:高位补符号位(即保持原数的符号不变)。

循环左移_crol_(m,n);
将一个数的各位顺序左移若干位(左移运算中,高位移到低位)。
如:int a=79(即01001111) 执行循环左移_crol_(a,2),
变成00111101。

循环右移_cror_(m,n);
将一个数的各位顺序右移若干位(右移运算中,低位移到高位)。
如:int a=79(即01001111) 执行循环右移_cror_(a,2),
变成11010011。

数组
数组:是相关数据的一个有序集合,数组中的每一个元素都是同一类型的数据。
一维数组:
1.一般形式:类型说明符 数组名[常量表达式];例如:int a[10];元素为a[0]-a[9]
2.常量表达式中不允许包含变量,可以包含常量或符号常量。
3.数组元素下标可以是任何整型常量、整型变量或任何整型表达式。
4.可以对数组元素赋值,数组元素也可以参与运算,与简单变量一样使用。
5.使用数值型数组时,不可以一次引用整个数组,只能逐个引用元素。
6.需要整体赋值时只可以在定义的同时整体赋值。
7.可以只给一部分元素赋值,后面没有赋值的元素值默认为0。
8.对全部数组元素赋值时可以不指定数组长度。

二维数组:
1.一般形式:类型说明符 数组名[常量表达式1][常量表达式2]。例如:int a[3][4];可以看成是包含3个一维数组,每一个一维数组包含4个元素。一共3×4个元素。
2.元素下标可以是任何整型常量、整型变量或任何整型表达式。
3.需要整体赋值时只可以在定义的同时整体赋值。
4.可以把所有数据写在一个花括号内。例如:
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};正确。
5.可以只对部分元素赋值,其余未赋值的元素默认为0。例:int a[3][4]={{1},{5,6}};可以看成int a[3][4]={{1,0,0,0},{5,6,0,0},{0,0,0,0}};
6.对全部数组元素赋值时可以省略第一维长度,第二维长度不可以省略。

发布了25 篇原创文章 · 获赞 8 · 访问量 1968

猜你喜欢

转载自blog.csdn.net/hltx666/article/details/104329404