小德职业大厅木桩:write a function that accepts a IP address and returns the class,the network address mask

来源:百度文库 编辑:高考问答 时间:2024/04/27 23:05:43
用C语言编写一个程序,用来判断输入的IP地址的类型(A B C D E)并输出其掩码
我要的是程序,可以直接运行的

这个问题本身就不大成立,如果不划分子网的话还好说,如果划分还要输入划分的个数

我想你如果知道子网的概念,这样的程序并不难编,只是简单的判断而已
给个思路你吧:
1. 判断输入的IP地址是否符合格式:是否有3个点,是否每节的数字不小于零不大于255,是否是整数,是否全是数字。
2. 如果第一节数字大于零小于128,则是A类地址,如果子网划分数为1,则子网掩码为255.0.0.0,如果划分两个子网,子网掩码为255.128(10000000).0.0,四个子网为255.192(11000000).0.0,依此类推;
3. 如果第一节数字大于127小于192,则为B类地址,如果子网划分数为1,则字网掩码为255.255.0.0,如果划分两个子网,子网掩码为255.255.128(10000000).0,四个子网为255.255.192(11000000).0,依此类推;
4. 如果第一节数字大于191小于224,则为C类地址,如果子网划分数为1,则字网掩码为255.255.255.0,如果划分两个子网,子网掩码为255.255.255.128(10000000),四个子网为255.255.255.192(11000000),依此类推;
5. 如果第一节数字大于223小于240,则为D类即组播地址,组播地址没有掩码
6. 如果第一节数字大于239小于256,则为E类即保留地址,这类地址是试验用途的,平时不能使用