题解 | #整数与IP地址间的转换#

整数与IP地址间的转换

http://www.nowcoder.com/practice/66ca0e28f90c42a196afd78cc9c496ea

主要注意输入整数的范围可能超过int型 2^31-1,因此要将输入输出的整数定义为long,对应输出的格式化用%ld
#include<stdio.h>

int main(){
    int ip[4];
    long n;
    scanf("%d.%d.%d.%d",&ip[3],&ip[2],&ip[1],&ip[0]); // 
    scanf("\n%ld",&n);
    
    long out = ip[0]+256*ip[1]+256*256*ip[2]+256*256*256*ip[3];
    printf("%ld\n",out);
    
    int arr[4] = {0,0,0,0};
    int k = 3;
    int r;
    while(k>=0){
        r = n%256;
        n = n/256;
        arr[k--] = r;
    }
    printf("%d",arr[0]);
    for(int i=1;i<4;i++){
        printf(".%d",arr[i]);
    }
}



全部评论

相关推荐

沉淀一会:1.同学你面试评价不错,概率很大,请耐心等待; 2.你的排名比较靠前,不要担心,耐心等待; 3.问题不大,正在审批,不要着急签其他公司,等等我们! 4.预计9月中下旬,安心过节; 5.下周会有结果,请耐心等待下; 6.可能国庆节前后,一有结果我马上通知你; 7.预计10月中旬,再坚持一下; 8.正在走流程,就这两天了; 9.同学,结果我也不知道,你如果查到了也告诉我一声; 10.同学你出线不明朗,建议签其他公司保底! 11.同学你找了哪些公司,我也在找工作。
点赞 评论 收藏
分享
头像
11-18 16:08
福州大学 Java
影流之主:干10年不被裁,我就能拿别人一年的钱了,日子有盼头了
点赞 评论 收藏
分享
4 1 评论
分享
牛客网
牛客企业服务