当前位置: 代码迷 >> 综合 >> poj 2105 IP Address【模板 power2】
  详细解决方案

poj 2105 IP Address【模板 power2】

热度:78   发布时间:2024-01-11 16:42:52.0

这道题就是一个字符串处理的问题。。。

一次AC,很爽。。。


#include <stdio.h>char IP[35]; //存放最开始的二进制数
int address[5]; //存放最后的答案int power2(int n)
{//自己写的2的次方int i;int result=1;for (i=0;i<n;i++)result<<=1;   //不停 *2return result;
}//将二进制转成4个十进制
void work()
{int i,j;int result;for(i=4;i>=1;i--){//i代表的就是四个格子result=0;for(j=i*8-1;j>=(i-1)*8;j--){if(IP[j]=='1')result+=power2(7-j%8);}address[i]=result;}
}int main()
{int N;scanf("%d",&N);while(N--){scanf("%s",IP);work();printf("%d.%d.%d.%d\n",address[1],address[2],address[3],address[4]);}return 0;
}


  相关解决方案