首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。 请完成函数fun(char*str,char ch),本函数采用二分法,在己按字母次序从小到大排序的字符数组str中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否则返回-1。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。 请完成函数fun(char*str,char ch),本函数采用二分法,在己按字母次序从小到大排序的字符数组str中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否则返回-1。
admin
2016-10-28
79
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。
请完成函数fun(char*str,char ch),本函数采用二分法,在己按字母次序从小到大排序的字符数组str中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否则返回-1。
二分法查找的思想是:初始查找区间的下界为0,上界为len-1,查找区间的中后,k=(下界+上界)/2;若list[k]等于ch,查找成功;若list[k]>ch,则新的查找区间的下界不变,上界改为k-1;否则新的查找区间的下界改为k+1,上界不变。在新区间内继续用二分法查找。
注意:请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
#include<iostream.h>
int fun(char*str,char ch)
{
}
void main()
{
char str[]={’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’i’,’j’,’k’,0};
char ch;
cout<<"请输入一个字符:"<<endl;
cin>>ch;
cout<<"输入数字的位置是:"<<fun(str,ch)<<endl;
return;
}
选项
答案
int low=0;//初始查找区间的下界 int high; int k; for(high=0;str[high]!=0;high++)//求字符串长度 while(low<high)//循环判断字符位置 { k=(low+hlgh)/2; if(str[k]==ch) return k; else if(str[k]>ch) high=k-1; else low=k+1; } if(str[low]==ch) return low; return -1;
解析
(1)首先,初始查找区间的下界为0。
(2)然后,求得字符串长度len,上界为len-1,查找区间的中后,k=(下界+上界)/2;若list[k]等于ch,查找成功。
(3)若list[k]>ch,则新的查找区间的下界不变,上界改为k-1:否则新的查找区间的下界改为k+1,上界不变。
转载请注明原文地址:https://kaotiyun.com/show/yONp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
编制好的程序,首先要确保它的正确性和可靠性,还应强调良好的编程风格。在书写功能性注解时应考虑()。
Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向【】的设计方法。
若调用一个函数,且此函数中没有return语句,则正确的说法是该函数
在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是______.
下面叙述正确的是______.
有如下类的定义,下划线处的语句是()。classMyClass{_______intx,y;public;MyClass(inta=0,intb=0){X=a;y=b;}staticvoidch
下面叙述不正确的是
一个关系数据库文件中的各条记录()。
下面的哪个选项不能作为函数的返回类型?
在C++语言中,数据封装要解决的问题是
随机试题
设有一吊桥,其铁链成抛物线形,两端系于相距100m高度相同的支柱上,铁链之最低点在悬点下10m处,求铁链与支柱所成之角.
患者男性,50岁,无吸烟史和肺部疾病史,全麻下行肠道手术。术后麻醉未清醒,呼吸时出现鼾声,此时应先采取的措施是
患者,男,35岁。体重70kg,全身深Ⅱ度烧伤面积为40%,伤后第一个24小时的补液量应
患者,女,42岁。右面部开口痛伴开口受限15天,右面部肿胀2天,无牙痛史。检查;右颧弓上方膨隆,中度压痛,开口度5mm。该患者最适宜的诊断是
1997年信利商场与丰盛食品公司签订了一份购买苹果脯5000箱的合同,总价款为50万元人民币,于5月20日之前以代办托运公路、铁路联运的方式交付给买方。合同签订后,信利商场即积极筹备货款,银行同意向其提供贷款,但要求其提供担保。信利商场即以两部汽车向银行作
实践中,均匀流可用下述哪个说法来定义?
关于要约收购,下列说法正确的是()。
根据《证券法》,下列关于客户交易结算账户管理的说法,不正确的是()。(2009年上半年)
下列关于自然人民事行为能力的表述中,错误的是()。
[2005年]用变量代换x=cost(0<t<π)化简微分方程(1-x2)y"一xy′+y=0,并求其满足y∣x=0=1,y′∣x=0=2的特解.
最新回复
(
0
)