#include "iostream"
#include "string"
#include "cmath"
using namespace std;
int main()
{
int tc, i, j, k, ans[4], len;
string input;
cin >> tc;
while (tc--)
{
memset(ans, 0, sizeof(ans));
cin >> input;
len = input.length();
for (i = 0, j = 0, k = 7; i < len; i++, k--)
{
if (i && i % 8 == 0)
{
j++;
k = 7;
}
ans[j] += pow(2, (double)k) * (input[i]-48);
}
printf("%d.%d.%d.%d\n", ans[0], ans[1], ans[2], ans[3]);
}
system("pause");
}
//下面是别人的代码,主要是学习了函数strtol()!
/*#include"stdio.h"
#include"string.h"
#include "stdlib.h"
int main()
{
int n;
scanf("%d",&n);
while(n--)
{
char a[33],temp[9];
int i,j;
scanf("%s",&a);
j=0;
for(i=0;i<strlen(a);i++)
{
temp[j++]=a[i];
if(j==8)
{
temp[j]='\0';
if(i!=strlen(a)-1)
printf("%d.",strtol(temp,NULL,2));
else
printf("%d\n",strtol(temp,NULL,2));
j=0;
}
}
}
return 0;
}
*/
poj 2105 IP Address
最新推荐文章于 2021-07-25 00:37:32 发布