A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 408205555 中级黑马   /  2015-7-20 14:09  /  1261 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

//编写函数,实现控制台输出 转换后的二进制格式
void change10To2(int num){
        //定义整形变量length,用来记录形参有多少位
        int length=size(num) * 8;
        //定义整型变量result,用来记录形参每次位移之后与1按位与操作后得出的结果
        int result;
       
        //假如我们调用函数时输入的是一个整型数字,length=32
        for(int i=0;i<length;i++){
                //每次循环都对result重新赋值,方便下一步重新位移
                result = num;
                //让形参的二进制格式的数据向右位移
                result = result >> length-1-i;
                //将形参向左位移的每一位与1进行按位与操作,得到的便是10进制转换为2进制格式的数据       
                result = result&1;
                //将数据输出
                printf("%d",result);
        }
}

void main(int argc,const char * argv[]){
        change10To2(11);
}

2 个回复

正序浏览

谢谢!继续努力!:)
回复 使用道具 举报
值得学习ing!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马