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

整数与IP地址间的转换

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

#include <stdio.h>

int main() {
    unsigned int ip[4];
    for (int i=0;i<4;i++){
        scanf("%d.",&ip[i]);
        // printf("%d\n",ip[i]);
    }
    unsigned int t = ip[0]<<24;
    t = t+ip[3];
    t = t+(ip[2]<<8);
    t = t+(ip[1]<<16);
    printf("%u",t);
    int ip_num;
    printf("\n");
    scanf("%d",&ip_num);
    ip[0] = ip_num>>24&(0xff);
    ip[1] = ip_num>>16&(0xff);
    ip[2] = ip_num>>8&(0xff);
    ip[3] = ip_num&(0xff);
    printf("%d.%d.%d.%d",ip[0],ip[1],ip[2],ip[3]);
    return 0;
}
全部评论

相关推荐

1 5 评论
分享
牛客网
牛客企业服务