标题:关于数制转换的几个why,懂的大神看这里!!!小弟先谢过
取消只看楼主
abc594986308
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:116
注 册:2013-3-18
结帖率:82.93%
已结贴  问题点数:20 回复次数:2 
关于数制转换的几个why,懂的大神看这里!!!小弟先谢过
q1:编写c程序,将无符号数a左循环n位,即将a中原来左面的n位左移n位,位移到右面n位。//首先题目什么意思啊?
#include <stdio.h>
int main()
{
  unsigned short a,b,c;     
  int n;
  scanf("%o,%d",&a,&n);     
  b=a>>(16-n);     //这句以及下面两句程序怎么实现功能的?//
  c=a<<n;     
  c=c|b;     
  printf("%o\n%o\n",a,c);     
  return 0;
}
q2:编写c程序,将16进制数转换为二进制数
#include<stdio.h>
int main()
{
  unsigned short a,b,i;     /*声明无符号短整型*/
  printf("请输入一个整型数:");
  scanf("%x",&a);     /*输入无符号整型*/
  b=1<<15;    /*构造一个最高位为 1、其余各位为0的整数*/
  printf("%x=",a);
  for(i=1;i<=16;i++)
  {
    putchar(a&b?'1':'0');    /*关键是这句,不懂啊,这个三目运算符还可以这么用?*/
    a<<=1;    /*将次高位移到最高位上*/
    if(i%4==0)
      putchar(',');    /*四位一组用逗号分开*/
  }
  printf("\bB\n");
  return 0;
}
q3:设char型变量x中的值1010 0111,则表达式(2+x)^(~3)的值是()
按照我的算法,是先把char型数值转换为十进制,然后加2,将结果转换为二进制,同时3转换为二进制,然后取反,将两二进制数进行异或,然后将结果抓换位二进制,可是坑爹啊,结果与答案不一样。特此求教。
ps:问题有点多,希望各位大大见谅。
搜索更多相关主题的帖子: include return 二进制 c程序 
2013-04-09 09:16
abc594986308
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:116
注 册:2013-3-18
得分:0 
回复 2楼 wp231957
大神,你老是说我懂的东东。敢不敢来点我不懂又急需懂的啊
2013-04-09 09:27
abc594986308
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:116
注 册:2013-3-18
得分:0 
回复 5楼 peach5460
看不懂。
2013-04-09 11:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-403426-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.262826 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved