【华为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();
相关推荐
WarPigs21 分钟前
C# dll笔记
c#
淡笑沐白23 分钟前
C# HttpClient完整使用指南
c#·httpclient
JaydenAI35 分钟前
[MAF预定义的AIContextProvider-02]AgentSkillsProvider——将Agent Skills引入MAF
ai·c#·agent·agent skills·maf
小满Autumn1 小时前
MVVM Light 架构笔记:定位器、命令、消息与 IoC 实践
笔记·学习·架构·c#·上位机·mvvm
代码中介商2 小时前
C++左值与右值:核心判断法则详解
开发语言·c++
JAVA9652 小时前
JAVA面试-并发篇 05-并发包AQS队列实现原理是什么
java·开发语言·面试
小满Autumn2 小时前
CommunityToolkit.Mvvm 架构笔记:现代 MVVM、源生成器与工程化实践
笔记·架构·c#·.net·wpf·mvvm
Halo_tjn3 小时前
反射与设计模式1
java·开发语言·算法
加号33 小时前
【C#】 JSON 序列化与反序列化:从入门到最佳实践
c#·json
珊瑚里的鱼3 小时前
手撕单例模式中的饿汉模式和懒汉模式,懒汉模式还要再多加一个C++11版本的
开发语言·c++·单例模式