黑马程序员技术交流社区
标题:
今天做了这道题感觉不错
[打印本页]
作者:
★彬★卍囧神
时间:
2014-5-12 18:25
标题:
今天做了这道题感觉不错
本帖最后由 ★彬★卍囧神 于 2014-5-13 13:09 编辑
/*
编写一个函数输出整数的二进制形式?
*/
#include <stdio.h>
void erzhuan(int n ); //整数转二进制函数转换函数申明
int main()
{ int a;
printf("请输入一个整数:\n");
scanf("%d",&a);
erzhuan(a);
return 0;
}
void erzhuan(int n )
{
int number = (sizeof (int) << 3) - 1 ; //调用sizeof函数算字节数
for( int h;number >= 0; number--)
{
if( (number+1) % 4 == 0) { //每4个就空格一次
printf(" "); }
h=n>>number&1; //右移动number个单位
printf("%d",h);
}
printf("\n");
}
复制代码
作者:
世俗孤岛
时间:
2015-3-15 10:12
学习了啊
作者:
lijifeng
时间:
2015-3-15 10:26
开始学习了,希望你成功
作者:
小白一号
时间:
2015-3-15 22:39
注释的不够细致,number 的结果是得到的位数吧。
作者:
wukai
时间:
2015-3-15 23:40
妈妈虎虎把
作者:
★W...
时间:
2015-3-16 13:54
表示没有电脑练手的孩子上不起...
作者:
463467479
时间:
2015-3-16 22:46
哈哈, 这个在 c 基础里面有讲我看过
作者:
1048
时间:
2015-3-17 09:42
过来看看~
作者:
舒少勇
时间:
2015-3-19 10:45
我看不懂 能讲讲那个左移是什么意思吗?
作者:
zhouxu52069
时间:
2015-4-22 14:34
有没有0基础教程啊,认识一下变量 运算符的那些。
作者:
gamyc
时间:
2015-5-15 12:09
学习了 ,祝你早日进入黑马学习
作者:
青葱岁月@1
时间:
2015-7-31 00:18
好吧 看懂了一点点
作者:
ReoWei
时间:
2015-7-31 21:41
长知识了,楼主多交流啊
作者:
李博文
时间:
2015-8-2 18:42
6666666666666666666666
作者:
夏末未至
时间:
2015-8-2 23:27
师兄是第几期的?
作者:
bling的女汉子
时间:
2015-8-3 13:41
之前视频里也有这个的例子,学习了 ,加油
作者:
ccwinner
时间:
2015-10-8 20:52
整型占4字节32位,
程序的意思:number初始化为31。整形数在内存中以二进制存储,通过for循环把该存储形式的高位到低位右移至最右边的最低位然后和0x1与运算输出,这样就是输出32位中的每一位,从高到低位输出,每输出八位用空格隔开。
最高位需要右移31位才能到最右边一位,同理,最低位需要右移0位,number的作用就是记录输入数据中每一位需要右移的位数。
作者:
FTD
时间:
2015-10-8 23:09
挺好的,可以好好学习啦,不错不错
作者:
tsc0000
时间:
2015-11-3 10:24
开眼了哈
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2