永发信息网

C# BitArray 程序

答案:1  悬赏:70  手机版
解决时间 2021-05-15 16:34
设计一个程序,接手用户在控制台输入的数值,通过BitArray类对象,将此数值以位类型作输出。请大侠们帮忙!还有能不能给出BitArray字节数组、整数类型数组的构造方法实例,谢谢!!
最佳答案

代码如下:


class Program
{
static void Main(string[] args)
{
Int32 num = ReadNum();
PrintBit(num);
Console.Write("按任意键退出。");
Console.ReadKey();
}


private static Int32 ReadNum()
{
Console.Write("请输入一个整数:");
while (true)
{
String numStr = Console.ReadLine();
Int32 num;
if (Int32.TryParse(numStr, out num))
{
return num;
}
Console.Write("您输入的不是数字,请重新输入。");
}
}


private static void PrintBit(Int32 num)
{
Int32[] numArray = new Int32[] { num };
BitArray bits = new BitArray(numArray);
Int32 bitLen = bits.Length;
Boolean outPut = false;
Console.Write("您输入的数字二进制形式为:");
for (Int32 i = bitLen - 1; i >= 0; i--)
{
Boolean bit = bits.Get(i);
if (!outPut && bit)
{
outPut = true;
}
if (outPut)
{
Console.Write("{0}", bit ? 1 : 0);
}
}
Console.WriteLine();
}
}



字节数组和整数数组构造函数例子:


6用二进制表示(从高位到低位)为110。


Byte类型的数据共8位,Byte的6在内存中表示(从低位到高位)为01100000


Byte[] bytes=new Byte[]{6,6,6}在内存中为01100000,01100000,01100000


用该bytes作为BitArray的构造函数得到的BitArray为011000000110000001100000


同理,Int32类型(即C#中的int类型)的数据共32位,Int32的6内存中表示(从低位到高位)为01100000 00000000 00000000 00000000


Int32[] ints=new Int32[]{6,6,6}


用上面的ints作为BitArray得到的BitArray为01100000 00000000 00000000 0000000001100000 00000000 00000000 0000000001100000 00000000 00000000 00000000

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
南岗区周生生(远大购物中心)地址是什么,有没
谁知道历届世界杯的冠军都是谁啊
为什么我喜欢她。她不喜欢我
沈阳北大青鸟消防售后服务
抵押给个人利息怎么算,企业用厂房抵押贷款需
脸缺水的急救办法
穿越火线截图是哪个按键!
脸很长,挺小的。 适合剪齐刘海吗?
请问暴风城矮人区的地铁怎么做
他(她)在吸烟,还是好学生!!!
西工区刘莎西医诊所地址是什么,有没有知道的
蒙语赛汗是什么意思,蒙古语赛罕是什么意思?
遇到这种事我们该怎么做?
江岸区中国通讯(平安苑东北)地址在什么地方,
我现在正在吃<调经促孕丸>吃时要避孕吗?如
推荐资讯
有哪几种功能的相机,拍摄效果最好又是最好最
在同一报表中,如何更好反映出不同地点的收入
电脑主页被篡改了,就改不回来了,咋个办,就
qq黄钻用手机并且不用充直卡能充费吗
关于英语单词angry
脸长长的,瘦瘦的,眼睛小小的人要弄什么样的
如何制作淘宝全屏海报,如何让制作全屏海报轮
铁路售票,武昌到汉中的车次、发车时间?
卢氏县安禅瑜伽私人会所地址在哪里啊
电脑键盘符号怎么切换,输入法切换大小写键如
价位在4500左右的本本联想或惠普 能玩大型游
用2来形容人是什么意思?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?