把二进制位上为1的相应十进制位上的数相加就可以得到这组二进制数的十进制数。如:11010010.11100101.00101110.00011011为32位IP地址转换为十进制可以这样来做: 则11010010.11100101.00第二位左移16位第三位左移8位第四位左移0位1.0.3 .255---二进制为---00000001.00000000.00000011.11111111 第二种方法将ip地址分为4段从左往右依次读取例如1.0.3 .255,
将32位的IP地址分为4组,每组8位,转换为10进制即可。例如:192.168.1.1 第一组:192,二进制表示为11000000,转换为10进制为192 第二组:168,二进制表示为10101000,void main(){ char a[32]; /*输入的二进制数据*/ int b[4]; /*输出的IP地址数据*/ int c[8]={128,64,32,16,8,4,2,1}; /*查询表*/ int temp;int sum;int i;in
/*从键盘输入一个32位的二进制形式的IP地址,将其转换为点分十进制的表示,如果输入的字符串中含有1和0以外的字符,则输出“该字符串不是正确的IP地址”。输入:0、例如,在网络通信中,IP地址通常以32位的二进制形式表示,但为了方便人们理解和使用,经常将其转换为点分十进制表示法(例如192.168.0.1)。这种转换需要将32位二进制分成四个8位的
("请输入IP地址或32位2进制数"); 11 a=in.next(); 12 if((b=a.matches("\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}"))) { 13 System.out.println("IP地址转2一个IP地址是由四个字节(每个字节8个位)的二进制码组成。请将32位二进制码表示的IP地址转换为十进制格式表示的IP地址输出。如果输入的数字不足32位或超过32位或输入的数字中有