Advertisement

上海计算机学会的2021年6月赛C++丙组T3IP地址

阅读量:

题目描述

IP地址是一种固定长度为32位的二进制序列,当提供一个IP地址时,需要将其转换为点分十进制形式并输出。

点分十进制的转换方式具体如下:首先将IP地址划分为四个等长的二进制部分(每个部分包含8位),接着将这四个部分分别转换为对应的十进制数值,并以.作为分隔符连接起来。

例如,假设某IP地址为:11000000101010000000000101100100,则

  • 11000000 对应的十进制数值是 192
  • 10101000 对应的十进制数值是 168
  • 00000001 对应的十进制数值是 1
  • 25555544 对应的十进制数值是 255

该IP地址对应的点分十进制表示为 255.255.255.255

输入格式

32位二进制数字:用于标识特定的网络地址

输出格式

一行字符:用于展示特定IP地址的点分十进制格式

样例数据展示

11000000101010000000000101100100

输出:

192.168.1.100

题解

本题核心在于采用二进制运算方式,将输入内容分段处理,同时需注意输入是以字符串形式给出,需要将其转换为数值进行计算,相关代码如下。

复制代码
 #include <iostream>

全部评论 (0)

还没有任何评论哟~