首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
在网络编程中,如果URL参数中含有特殊字符,如空格、“#”等,可能导致服务器端无法获得正确的参数值,需要将这些特殊符号转换成服务器可以识别的字符。转换的规则是在“%”后面跟上ASCⅡ码的两位十六进制的表示。比如空格的ASCⅡ码是32,即十六进制的0×20,
在网络编程中,如果URL参数中含有特殊字符,如空格、“#”等,可能导致服务器端无法获得正确的参数值,需要将这些特殊符号转换成服务器可以识别的字符。转换的规则是在“%”后面跟上ASCⅡ码的两位十六进制的表示。比如空格的ASCⅡ码是32,即十六进制的0×20,
admin
2017-04-28
81
问题
在网络编程中,如果URL参数中含有特殊字符,如空格、“#”等,可能导致服务器端无法获得正确的参数值,需要将这些特殊符号转换成服务器可以识别的字符。转换的规则是在“%”后面跟上ASCⅡ码的两位十六进制的表示。比如空格的ASCⅡ码是32,即十六进制的0×20,因此空格被替换为“%20”。再比如“#”的ASCⅡ码为35,即十六进制的0×23,它在URL中被替换为“%23”。请设计一个时间和空间上尽可能高效的算法,把字符串中的每个空格替换为“%20”。例如输入“We are happy.”,则输出“We%20are%20happy.”。要求:
根据设计思想,采用C、C++或Java语言描述算法,关键之处给出注释。
选项
答案
算法实现如下: /*length为字符数组string的总容量+/ void ReplaceBlank (char string[],int length) { if (string==NULL&&length<=0) return; /*originalLength为字符串strincg的实际长度*/ int originalLength=0; /*numberOfBlank为字符串中空格的数量*/ int numberOfBlank=0; int i=0; while (string[i] !=’\0’) { originalLength++; if (string [iJ;=’ ’) numberOfBlank++; i++; } /*newLength为把空格替换成’%20’之后的长度*/ int newLength=originalLength+numberOfBlank*2; int indexOfOriginal=originalLength; int indexOfNew=newLength; while (indexOfOriginal>=0&&indexOfNew>indexOfOriginal) { //如果当前字符为空格,在indexOfNew所指单元以及前2格分别插入字符’0’、 ’2’、’%’ if( string[indexOfOriginalJ==’ ’) { string[indexOfNew--]=’0’; string[indexOfNew--]=’2’; string [indexOfNew--]=’%’; } //如果当前indexOfOriginal所指的字符不是空格,将当前字符复制到indexOfNew所指位 置,并将indexOfNew向前移动1格 else { string[indexOfNew--] =string [indexOfOriginal]; } indexOfOriginal--; } }
解析
转载请注明原文地址:https://kaotiyun.com/show/DWRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
什么是委任统治制?其实质如何?
试述君士坦丁堡的陷落过程及其影响。
试以英国为例分析工业革命的深远影响。
【奥地利王位继承战争】南京大学2013年国际关系史真题
兵家是专门研究军事理论和实践的学派,主要代表人物是战国中期齐国的(),他所著的兵书是一部杰出的古代兵书。
提出电磁感应定律的是物理学家()。
与前两次工业革命相比,第三次科技革命在能源结构上的主要变化是()
隋朝建立了三省六部制,其中负责审议的部门是()。
《凡尔赛条约》中,战胜国以()方式处置德国的全部海外殖民地。
某计算机字长为16位,主存地址空间大小为128KB,按字编址。采用单字长指令格式,指令各字段定义如图B-4所示。转移指令采用相对寻址方式,相对偏移量用补码表示,寻址方式定义见表B-1。请回答下列问题:转移指令的目标地址范围是多少?
随机试题
人民代表大会制度的基础是()
无名条款是指合同中有些条款()。
侧方位排牙时,平衡侧不接触工作侧接触,应
不适合用煮沸消毒法消毒的是()。
玻璃应力检测是指用偏振片确定玻璃是否经( )处理。
下列各项中,属于志愿者参与社会服务以利他和社会为中心的动机的有()。
Whichofthefollowingactivitiescanbeusedtogetthemainideaofapassage?
观察下列各式:a+b+1=2,a2+b2+2=5,a2+b2+3=7,a4+b4+4=11,a5+b5+5=16,…,则a10+b10+10=__________.
2012年,浙江省全年社会消费品零售总额13546亿元,比上年增长13.5%,扣除价格因素,实际增长11.4%。其中,城镇消费品零售额11409亿元,增长13.8%;乡村消费品零售额2137亿元,增长12.2%。分行业看,批发零售贸易业零售额12101亿元
抚养比就是需要经济供养的少年与老年人口之和与劳动年龄人口数量之比,反映了劳动力的抚养负担程度。根据上述定义,以下现象不会增加抚养比的是()。
最新回复
(
0
)