首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数isLegal(char*ipaddr)的功能是判断以点分十进制数表示的IPv4地址是否合法。参数ipaddr给出表示IPv4地址的字符串的首地址,串中仅含数字字符和“.”。若IPv4地址合法则返回1,否则返回0。判定为合法的条件是:每个十进制数的值位
函数isLegal(char*ipaddr)的功能是判断以点分十进制数表示的IPv4地址是否合法。参数ipaddr给出表示IPv4地址的字符串的首地址,串中仅含数字字符和“.”。若IPv4地址合法则返回1,否则返回0。判定为合法的条件是:每个十进制数的值位
admin
2018-04-19
66
问题
函数isLegal(char*ipaddr)的功能是判断以点分十进制数表示的IPv4地址是否合法。参数ipaddr给出表示IPv4地址的字符串的首地址,串中仅含数字字符和“.”。若IPv4地址合法则返回1,否则返回0。判定为合法的条件是:每个十进制数的值位于整数区间[0,255],两个相邻的数之间用“.”分隔,共4个数、3个“.”。例如,192.168.0.15、1.0.0.1是合法的,192.168.1.256、1.1.1是不合法的。
【C函数】
int isLegal(char*ipaddr)
{
int flag;
int curVal; //curVal表示分析出的一个十进制数
int decNum=0,dotNum=0;//decNum用于记录十进制数的个数
//dotNum用于记录点的个数
char*p= (1)__________;
for(;*p;p++) {
curVal=0;flag=0;
while(isdigit(*p)) { //判断是否为数字字符
curVal=(2)___________ +*p一'0';
(3)___________;
flag=1;
}
if(curVal>255){
return 0;
}
if(flag)f
(4)___________j
}
if(*p=’.’){
dotNum++;
}
}
if((5)__________){
return 1;
}
return 0;
}
选项
答案
(1)ipaddr (2)curVal*10或其等价形式 (3)p++或其等价形式 (4)decNum++或其等价形式 (5)4=decNum&&3=dotNum或其等价形式
解析
本题考查C程序的基本结构、运算逻辑和指针的简单应用。
函数isLegal(char*ipaddr)的功能是判断以点分十进制数表示的IPv4地址是否合法。
由于IPv4地址是以字符串的方式提供的,因此需要通过扫描字符串,解析出每个十进制数。
由于说明中已保证函数所处理的字符串中仅包含数字字符和“.”,因此代码的运算逻辑中不考虑其他字符。
在for语句中通过指针p来访问每个字符,所以空(1)所在语句需要将指针参数ipaddr的值赋给p。
一个整数可表示为一个多项式,例如198=1*10*10+9*10+8=((0+1)*10+9)*10+8,因此从左到右每得到l位数字,就进行一次计算,直到最后一位数字。在解析字符串中的一个整数时,先令curVal=0,此后每得到一位数字(即*p一’0’),就令curVal*l0+*p一’0’并用该表达式的值更新curVal,直到遇到一个“.”。空(2)处应填入“curVal*10”,空
(3)处应填入“p++”,以读取下一字符。
根据说明,需要对从字符串中解析出的整数进行计数,flag用来标识是否解析出一个整数,若是,则在空(4)处填入“decNum++”实现计数。若该整数超过255,则可以确定是非法的地址。
当完成字符串分析后,应该正好有4个[0,255]范围内的整数和分隔这些数的3个点(个数用dotNum表示),因此空(5)处应填入“4=decNum&&3=dotNum”或其等价形式。
转载请注明原文地址:https://kaotiyun.com/show/o2jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Excel中,设单元格A1中的值为100,B1中的值为200,A2中的值为300,B2中的值为400,若在A3单元格中输入函数“=SUM(A1:B2)”,按回车键后,A3单元格中的值为()。
在Excel2010的A1单元格中输入函数“=IF(1<>2,1,2)”,按回车键后,A1单元格中的值为________________。
下列操作中______可以随意改变窗口大小。
删除Windows中某个应用程序的快捷方式,意味着(39)。
许多书上都说,人一次只能记住或处理5~9(7±2)条信息。为了检验这个结论是否正确,宜采用()调查方法。经过多次调查统计研究发现,人一次平均只能记住或处理4条信息。经考证,原来7±2的说法只是一位专家在一个讲演稿中的估计,并不是真正的调研报告,但却
计算机病毒是一段程序,一般隐藏在______中。
在Excel的A1单元格中输入函数“=6+16+MAX(16,6)”,按回车键后,A1单元格中显示的值为__________。
在Access中,查询“学生”数据表的所有记录及字段的SQL语句是______。
ASP是(1)网页制作技术。A.动态B.静态从以下备选答案内为程序中(5)~(9)处空缺部分选择正确答案。(5)A.CreatObjectB.ConnectC.ExecuteSQLD.Open()(6)A.<body>
请根据网页显示的效果图(见图6-3)和网页中的元素说明回答问题。
随机试题
阅读下面的文字:有问之,对曰:“橐驼非能使木寿且孳也,能顺木之天以致其性焉尔。凡植木之性,其本欲舒,其培欲平,其土欲故,其筑欲密。既然已,勿动勿虑,去不复顾。其莳也若子,其置也若弃,则其天者全而其性得矣。故吾不害其长而已,非有能硕茂之也;不抑耗其
对酶的研究中,常以作图这种直观方式表现其动力方程式,某个酶按底物浓度S对反应速度V作图得S形曲线意味
华谊公司2009年有关的财务数据如下:该年销售收入为40000万元,销售净利率为5%,股利支付率为60%,没有可动用的金融资产。要求回答下列不相关的问题:如果公司预计2010年销售增长20%,请分别计算销售净利率、权益乘数、总资产周转率、利润留存
德国文艺复兴时期最杰出的两位画家是_________和荷尔拜因。
随着科技的发展,转基因技术正在从挑战自然和违背自然的方向转变到尊重自然和顺应自然的方向。与第一代转基因作物的设计思路截然不同,新一代转基因作物采用的是基因沉默技术,它标志着转基因技术里程碑式的突破。作者接下来最有可能谈论的是:
若有关系模式R(A,B),下列叙述中哪一个(些)是正确的?Ⅰ.A→→B一定成立Ⅱ.A→B一定成立Ⅲ.R的规范化程度无法判定Ⅳ.R的规范化程度达到4NF
有如下程序 #include<iostream.h> voidmain() { floatx=2.0,y; if(x<0.0)y=0.0; elseif(x<10.0)y=1.0/x; elsey=1.0; cout<
Strawberries:Inastudythattrackedthedietsandhealthof1,271peopleinMassachusetts,researchersattheHarvardSchool
Inbringingupchildren,everyparentwatcheseagerlythechild’sacquisitionofeachnewskill—thefirstspokenwords,thefir
Tobeagoodteacher,youneedsomeofthe【B1】______ofagoodactor:youmustbeabletoholdtheattentionandinterestofyour
最新回复
(
0
)