POJ2105 IP Address 八进制转十进制

来源:互联网 发布:党员干部知敬畏 编辑:程序博客网 时间:2024/05/18 01:58
题目:把输入的32位,每八位换为十进制值
#include<stdio.h>#include<string.h>int ba(char b[9])  //也能写成b[]{    int c[8]={128,64,32,16,8,4,2,1};//建一个数组定义值    int sum=0;    for(int i=0;i<8;i++)    {        if(b[i]=='1')  sum+=c[i];    }    return sum;}int main(){    int i,j,n;    char a[36];    scanf("%d",&n);    while(n--)    {        scanf("%s",&a);        printf("%d.%d.%d.%d\n",ba(a),ba(a+8),ba(a+16),ba(a+24));//这个地方函数要用数组地址    }    //写成单个数组值会提示invalid conversion from `char*' to `char    return 0;}