【华为c# OD机考参考答案】01---IPv4地址转换成整数

题目

1、题目

复制代码
01---IPv4地址转换成整数

2、解图思路

1、IP地址转为二进制

2、二进制转十进制

3、注意事项

1、IP地址的范围判断

2、空字符串判断

3、非法字符判断

4、考点

1、string的split 、convert等相关用法

2、正则表达式

3、进制转换

4、理解32位整数的意思

5、代码

判断代码我没有写,感觉直接对输入的字符串去挨个做判断就行了

string 复制代码
string[] ipv4Node = Ipv4.Split('#');
string str = null;
//挨个判断可能情况
if (Ipv4.Length < 7 || Ipv4.Length > 15)
{
    Console.WriteLine("invalid IP");
    return;
}
else if (string.IsNullOrWhiteSpace(Ipv4))
{
    Console.WriteLine("invalid IP");
    return;
}

for (int i = 0; i < ipv4Node.Length; i++)
{
   //将IP地址转为二进制
    str+= Convert.ToString(Convert.ToInt16( ipv4Node[i]?.ToString(), 16), 2).PadLeft(8, '0');
}
//二进制转十进制
var res=Convert.ToInt32(str,2);
Console.WriteLine( res );
Console.ReadKey();
相关推荐
gergul9 小时前
python venv虚拟环境复制
linux·开发语言·python
LNN20229 小时前
半导体设备上位机 Qt 实现计划
开发语言·数据库·qt
摇滚侠9 小时前
Java 项目教程《黑马商城》OpenFeign 15 - 19
java·开发语言
摇滚侠9 小时前
Java 项目教程《黑马商城》微服务拆分 05 - 10
java·开发语言·微服务
虎头金猫9 小时前
监控机不在被监控的机器上,Prometheus怎么跨网络把数据拉过来
运维·服务器·开发语言·网络·云原生·开源·prometheus
skilllite作者10 小时前
Agent-Skills 核心能力与实战效能深度评测
大数据·开发语言·前端·数据库·人工智能·python
故事还在继续吗10 小时前
DPDK免锁队列
开发语言·dpdk
诙_10 小时前
深入理解C++--STL
开发语言·c++
Mr数据杨10 小时前
【Codex】搭建教学中心数据工作台统筹教案与课件资源
java·开发语言·django·codex·项目开发
枫叶丹410 小时前
【HarmonyOS 6.0】Data Augmentation Kit 智慧化数据检索 C 接口解析:向量化、知识检索与知识问答
c语言·开发语言·华为·harmonyos