7-7 IP地址轉換(20 分)
阿新 • • 發佈:2019-01-06
一個IP地址是用四個位元組(每個位元組8個位)的二進位制碼組成。
請將32位二進位制碼錶示的IP地址轉換為十進位制格式表示的IP地址輸出。
輸入格式:
輸入在一行中給出32位二進位制字串。
輸出格式:
在一行中輸出十進位制格式的IP地址,其由4個十進位制陣列成(分別對應4個8位的二進位制數),中間用“.”分隔開。
輸入樣例:
11001100100101000001010101110010
輸出樣例:
204.148.21.114
#include<iostream> using namespace std; int main() { int a[4]={0},b[4][8]; int arr[8]={128,64,32,16,8,4,2,1}; string str; cin>>str; int x=0; for(int i = 0; i<4;i++) { for(int j = 0+x; j<8+x; j++) { if(str[j]-'0'==1) { a[i]=a[i]+ arr[j-x]; } } if(x<24) { x=x+8; } } int first=1; for(int j=0;j<4;j++) { if(first==0) cout<<"."; else first=0; cout<<a[j]; } }