网站免费部署,php前台网站开发,网络营销的50种方法,网站建设公司 电话销售没什么效果整数在内存中以二进制补码形式存储。对于给定的整数n#xff0c;要求输出其4个字节长的补码。1个字节8个二进制位。
输入格式:
输入一个整数n(−231≤n≤231−1)。
输出格式:
输出n的补码。
输入样例1:
123输出样例1:
00000000000000000000000001111011输入样例2:
-12…整数在内存中以二进制补码形式存储。对于给定的整数n要求输出其4个字节长的补码。1个字节8个二进制位。
输入格式:
输入一个整数n(−231≤n≤231−1)。
输出格式:
输出n的补码。
输入样例1:
123输出样例1:
00000000000000000000000001111011输入样例2:
-123输出样例2:
11111111111111111111111110000101提示:
十进制非负整数n的补码是n的二进制数按“除基逆序取余”的方法求得。 例如123转换为二进制基数为2得到1111011高位补0得到123的补码4个字节长如下 00000000000000000000000001111011十进制负整数m的补码可对−m的二进制数按位取反再加1得到。 例如对于样例2m−123−m123对应的二进制123的补码如下00000000000000000000000001111011 按位取反得到 11111111111111111111111110000100 再加1得到-123的补码 11111111111111111111111110000101 个人思路 在c语言中数据存储的形式本来就是补码可以用右移操作符加上按位与判断每一个比特位是1还是0 #include stdio.h
void Print_bin(int n)
{for(int i31;i0;i--){if((ni)11){printf(1);}else{printf(0);}}
}int main()
{int n;scanf(%d,n);Print_bin(n);}