struct bits
{
unsigned int a:1;
unsigned int b:1;
unsigned int c:10;
unsigned int d:21;
};
#include <iostream>
using namespace std;
int invert_end(int num,int bits) //第一个表示传进来的数值,第二个是让这个数值的后多少位反转
{
int mask=0; //此时全部位为0
int temp=1; //此时它的最后一位是1
while (bits>0)
{
mask=mask|temp; //或,每次只把1位置为1
temp=temp<<1; //它的唯一一个是1的位向左移
bits--;
}
return num^mask; //mask的后几位已经为1,异或即可
}
int main(void)
{
cout<<sizeof(int)<<endl;
int val;
cout<<"输入一正整数:\n";
cin>>val;
int res=invert_end(val,3);
cout<<val<<" "<<res;
cin.get();
return 0;
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有