循環右移位舉例

循環移位。要求將a進行右循環移位,將a右循環移n位。

1、將a中的右端n位放到b中的高n位中。

2、將a右移n位,左端自動補0。

3、將a,b相或放入c中,即得a右循環n位結果。

程序如下:



#include "stdafx.h"
using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{
unsigned a,b,c,n;
cout<<"輸入原數a的值及循環移動的位數n:"<<endl;
cin>>a>>n;
b=a<<(16-n);
a=a>>n;
c=a|b;
cout<<"a循環右移"<<n<<"位是:"<<c<<endl;
system("PAUSE");
return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章