IP地址转换

IP地址转换:一个IP地址是用4个字节(每个字节位)的二进制组成。输入32位二进制字符串,输出十进制格式的IP地址。所输出的十进制IP地址由4个十进制数组成(分别对应4个8位的二进制数),中间用圆点隔开。

输入输出示例:

01111001110000111011001011101010

121.195.178.234


#include<iostream>
#include<cstring>
#include<algorithm>
const int maxn=100;
using namespace std;


int main(void)
{
	int a[maxn];
	string str;cin>>str;
	int sum1=0;int sum2=0;int sum3=0;int sum4=0;
	for(int i=0;i<=7;i++)
		sum1+= (str[i]-'0')*(1<<(7-i));
    str.erase(0,8);	
	for(int i=0;i<=7;i++)
			sum2+= (str[i]-'0')*(1<<(7-i));
	str.erase(0,8);
	for(int i=0;i<=7;i++)
		sum3+=(str[i]-'0')*(1<<(7-i));
	str.erase(0,8);
	for(int i=0;i<=7;i++)
		sum4+=(str[i]-'0')*(1<<(7-i));
	cout<<sum1<<'.'<<sum2<<'.'<<sum3<<'.'<<sum4<<'.'<<endl;	
return 0;		
}

猜你喜欢

转载自blog.csdn.net/zstuyyyyccccbbbb/article/details/105871645