本文主要是介绍poj 2105 IP Address【模板 power2】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这道题就是一个字符串处理的问题。。。
一次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;
}
这篇关于poj 2105 IP Address【模板 power2】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!