首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列函数说明和C函数,将应填入______处的语句写在答题纸的对应栏内。 [函数2.1说明] 函数palindrome(char s[])的功能是:判断字符串s是否为回文字符串,若是,则返回0,否则返回-1。若一个字符串顺读和倒读都一样,称
阅读下列函数说明和C函数,将应填入______处的语句写在答题纸的对应栏内。 [函数2.1说明] 函数palindrome(char s[])的功能是:判断字符串s是否为回文字符串,若是,则返回0,否则返回-1。若一个字符串顺读和倒读都一样,称
admin
2007-03-10
94
问题
阅读下列函数说明和C函数,将应填入______处的语句写在答题纸的对应栏内。
[函数2.1说明]
函数palindrome(char s[])的功能是:判断字符串s是否为回文字符串,若是,则返回0,否则返回-1。若一个字符串顺读和倒读都一样,称该字符串是回文字符串,例如,“LEVEL”是回文字符串,而“LEVAL”不是。
[函数2.1]
int palindrome(char s[])
{
char *pi, *pj;
pi=s;pj=s+strlen(s)-1;
while(pi<pj&& (1) ) {
pi++;pj--;
}
if( (2) ) return-1;
else return 0;
}
[函数2.2说明]
函数f(char *str,char del)的功能是:将非空字符串str分割成若干个子字符串并输出,del表示分割时的标志字符。
例如,若str的值为“33123333435”,del的值为“3”,调用此函数后,将输出3个子字符串,分别为“12”,“4”和“5”。
[函数2.2]
void f(char *str,char del)
{
int i,j,len;
len=strlen(str);
i=0;
While(i<len){
While( (3) )i++; /* 忽略连续的标志字符 */
/* 寻找从str
开始直到标志字符出现的一个子字符串 */
j=i+1;
while(str[j]!=del &&str[j]!’\0’)j++;
(4) =’\0’; /* 给找到的字符序列置字符串结束标志 */
printf("%s\t",&str
);
(5);
}
}
选项
答案
(1)*pi==*pj (2)pi<pj或 *pi != * pj,及其等价形式 (3)str[i]==del (4)str[j] (5)i=j+1
解析
[函数2.1]
若一个字符串顺读和倒读都一样,称该字符串是回文字符串。如果使用数组s[n]来存储一个字符串,则根据这个定义,要判断一个串是否是回文字符串,需要循环比较:
(1)该字符串的第一个元素s[0]和最后一个元素s[n-1]比较,如果s[0]不等于 s[n-1],则s不是回文字符串。
(2)如果s[0]等于s[n-1],则第二个元素s[1]和倒数第二个元素s[n-2]比较,如果s[1]不等于s[n-2],则s不是回文字符串。
(3)依次类推,直到最中间的2个元素也比较完毕(如果s有偶数个元素),或者只剩下中间的1个元素(如果s有奇数个元素)。
当上述循环结束时,如果最中间的元素没有进行比较,就说明s不是回文字符串,如果进行了比较,则s是回文字符串。
在函数2.1中,pi和pj是2个指向字符的指针,程序首先将s的首地址赋给pi(即 pi=&a[0]),将元素s[strlen(s)-1)的地址赋给pj(即pj=&s[strlen(s)-1]),当pi<pj并且pi和pj所指向的字符相等时进行循环:pi自增,pj自减。
退出循环后,如果pi≥pj,则s是回文字符串(如果s有偶数个元素,则为pi>pj,如果 s有奇数个元素,则为pi=pj);如果pi<pj,则s不是回文字符串。
[函数2.2]
由函数2.2说明可知,此函数对给定的字符串进行从左至右的扫描,找出不包含标志字符的子字符串。
在函数2.2中,i的初值为0,len表示字符串的长度。当i<len时进行循环:如果当前字符是标志字符,则不做处理,继续扫描以处理标志字符连成一串的情况。当退出该循环时,当前字符str
不是标志字符,这时开始寻找从str
开始,直到标志字符出现的一个子字符串(i保持不变,用j标记寻找的过程),给找到的字符序列置字符串结束标志,以便于后面语句的输出。
输出语句结束后,就要继续寻找后面的不包含标志字符的子字符串,这时需要把指针 i移动j的后面,继续扫描。
转载请注明原文地址:https://kaotiyun.com/show/0zjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
许多计算机在暂停一段时间不用时会自动进入待机状态。这种状态的特点不包括()。
把数据从本地计算机传送到远程主机称为______。
某单位需要使用浓度为15%的盐水750克,但只有浓度20%和5%的两种盐水。经过计算,将浓度20%和5%的盐水分别取()克混合后就能达到要求。
常用的数据收集方法一般不包括(7)。
欲在桌面上移动窗口位置可以拖曳(36)。
在Access中,表和数据库的关系是(67)。
对用户来说,信息系统的(14)反映了系统的功能。
Excel中,快捷功能按钮的功能是(51)。
在Excel2007中,设单元格A1中的值为-1,B1中的值为1,A2中的值为0,B2中的值为1,若在C1单元格中输入函数“=IF(AND(A1>0,B1>0),A2,B2)”,按回车键后,C1单元格中的值为______。
________________是按照科学的城市发展理念,利用新一代信息技术,通过人、物、城市功能系统之间的无缝连接与协同联动,实现自感知、自适应、自优化,形成安全、便捷、高效、绿色的城市形态。
随机试题
用符号组_______分隔两个Shell命令,只有在前一个命令执行成功后才执行后一个命令。
合金是由两种或两种以上的金属与金属或非金属经过一定方法合成的具有金属特性的物质。下列属于合金的是:
某实施监理的城市桥梁工程项目分为A、B、C3个单项工程,经有关部门批准采取公开招标的形式分别确定了3个中标人并签订了合同。A、B、C3个单项工程合同条款中有如下规定:1.A工程在施工图设计没有完成前,业主通过招标选择了一家总承包单位承包该工程的施工任务。
某企业2008年12月31日购入—台设备,入账价值为300万元,预计使用寿命为5年,预计净残值为0,采用年数总和法计提折旧。2010年12月31日该设备存在减值迹象,经测试预计可收回金额为100万元。假设该设备预计使用寿命、折旧方法和预计净残值不变,则20
一般资料:求助者,男性,46岁,会计。案例介绍:求助者半年前调入某单位任会计,开始感觉还可以,一个月前因工作失误遭领导批评,并觉得同事们开始疏远自己。从此,白天工作打不起精神,有时晚上睡不着,心情郁闷、烦躁。一周前因失眠、食欲不振去医院检查治疗,按
某地将抓到的犯罪分子进行游街示众。你怎么看?
积极强化是指用某种有吸引力的结果对某一行为进行奖励和肯定,以期在类似条件下重复这一行为。消极强化是指在行为出现时把不愉快的刺激撤销或减少,这样也可以增加行为频率。根据上述定义,下列选项属于积极强化的是:()
符合下列()情形的,纳税人应进行土地增值税的清算。
日本全面侵华战争开始的标志是()
下列指令序列执行后,AL寄存器中的内容为【 】。 MOV AL,1 SAL AL,1 MOV BL,AL SAL AL,1 SAL AL,1 ADD AL,BL
最新回复
(
0
)