zoukankan
html css js c++ java
用C语言将二进制转换为IP地址
根据需要将任意32位二进制转换为IP地址。
输入:11111111
输出:255.0.0.0
思路:将输入的二进制数以每8个为一个单位转化为十进制 。
#include <stdio.h> int bin_dec(int x, int n) //自定义函数将二进制数转换为10进制 { if(n == 0) { return 1; } return x * bin_dec(x, n-1); //递归调用bin_dec()函数 } int main(void) { int i; int ip[4] = {0}; char a[33]; printf("请输入二进制数: \n"); scanf("%s", a); for(i=0; i<8; i++) { if(a[i] == '1') { ip[0] += bin_dec(2, 7-i); } } for(i=8; i<16; i++) { if(a[i] == '1') { ip[1] += bin_dec(2, 15-i); } } for(i=16; i<24; i++) { if(a[i] == '1') { ip[2] += bin_dec(2, 23-i); } } for(i=24; i<32; i++) { if(a[i] == '1') { ip[3] += bin_dec(2, 31-i); } if(a[i] == '\0') { break; } } printf("IP:\n"); printf("%d.%d.%d.%d\n", ip[0], ip[1], ip[2], ip[3]);//输出IP地址 return 0; }
查看全文
相关阅读:
vue.js生成纵向拓扑图
vue.js生成横向拓扑图
Vue.js中使用wangEditor富文本编辑器
文件上传与下载,PDF与Excel的操作
Element布局实现日历布局
golang时间转换
iView学习笔记(四):Form表单操作
iView学习笔记(三):表格搜索,过滤及隐藏列操作
iView学习笔记(二):Table行编辑操作
iView学习笔记(一):Table基本操作(包含前后端示例代码)
原文地址:https://www.cnblogs.com/linuxer/p/2441220.html
最新文章
Linux网络命令——ifconfig、ifup、ifdown
SQL运行内幕:从执行原理看调优的本质
洞悉MySQL底层架构:游走在缓冲与磁盘之间
Java中子类和父类相关方法的执行顺序
java 性能优化:35 个小细节,让你提升 java 代码的运行效率
解决:tomcat部署时deploy location不能显示加载后的路径
JUnit4:Test注解的两个属性:expected和timeout
eclipse下导入jdk源码
Oracle数据库相关问题之ORA-12541:TNS:无监听程序
Java不同编码方式,中英文字符所占字节数
热门文章
Java提高篇——单例模式
Java提高篇——设计模式
Java提高篇——Java 异常处理
Java基础——基本类型和包装类、基本类型和字符串之间的转换
Java提高篇——静态代码块、构造代码块、构造函数以及Java类初始化顺序
Java提高篇——对象克隆(复制)
Java提高篇——JVM加载class文件的原理机制
Java提高篇——理解String 及 String.intern() 在实际中的应用
vue.js集成codeMirror代码编辑器
vue.js生成S型拓扑图
Copyright © 2011-2022 走看看