首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。请完成函数fun(char*str,char ch)的定义,本函数采用二分法,在已按字母次序从小到大排序的字符数组str中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否则返回1。
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。请完成函数fun(char*str,char ch)的定义,本函数采用二分法,在已按字母次序从小到大排序的字符数组str中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否则返回1。
admin
2020-06-29
41
问题
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。请完成函数fun(char*str,char ch)的定义,本函数采用二分法,在已按字母次序从小到大排序的字符数组str中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否则返回1。
二分法查找的思想是初始查找区间的下界为0,上界为len-1,查找区间的中部后,k=(下界+上界)/2;若list[k]等于
ch,查找成功;若1ist[k]>ch,则新的查找区间的下界不变,上界改为k-1;否则新的查找区间的下界改为k+1,上界不变。在新区间内继续用二分法查找。
注意:请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填人所编写的若干语句。
试题程序:
#include
int fun(char*str,char ch)
{
}
void main()
{
char str[]={’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’i’,’j’,’k’};
char ch;
cout<<"请输入一个字符:"<
cin>>ch:
cout<<"输入字符的位置是:"<
return;
}
选项
答案
int low=0; //初始查找区间的下界 int high; int k; for(high=0;str[high]!=0.high++) //求字符串长度 while(low(high) //循环判断字符位置 { k=(low+high)/2: if(str[k]==ch) return k; else if(str[k]>ch) high=k-1; else low=k+1: } if(str[low]==ch) return tow; return -1;
解析
本题首先初始查找区间的下界为0,然后求得字符串长度len,上界为len-1,查找区间的中部后,k=(下界+上界)/2;若tist[k]等于ch,查找成功。若list[k])ch,则新的查找区间的下界变,上界改为k-1;否则新的查找区间的下界改为k+1,上界不变。
转载请注明原文地址:https://kaotiyun.com/show/mbyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:number1=anumber2=anumber1=anumber2=b注意:错误的语句
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错误,请改正错误,使得程序输出:Hellotest注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在∥********error***
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:(1)定义复数类CComplex的私有成员变量real和imagmary,分别用来表示复数的实部和虚部,都是double
若x和y是程序中的两个整型变量,则下列if语句中合法的是
下列符号中能够作为C++标识符的是()。
数据库设计中反映用户对数据要求的模式是( )。
某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)( )。
有如下头文件:intf1();staticintf2();classMA{public:intf3();staticintf4();};在所描述的函数中,具有隐含的this指针的是()。
下列选项中,正确的C++表达式是
面向对象方法中,继承是指( )。
随机试题
侦查人员持《调取证据通知书》执行调取时,执行人员不得少于
多根多处肋骨骨折的反常呼吸,在吸气时下述哪项不正确
A.1~2个月B.3~6个月C.8~10个月D.1~2岁E.3岁以后佝偻病颅骨软化症出现在
某患者因腮腺良性肿瘤将于明日行腮腺浅叶切除术加面神经解剖术,今日术前家属签字时,谈话中以下哪项是不必要的
同侧额纹消失可能是因为损伤了面神经的
下列现浇混凝土板工程量计算规则中,正确的说法是( )。
《老子》中说:“合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。”这表明()。
AlltherecentnewsonAIDSisbad.ThedeathofRockHudson【1】publicconcern-aboutthe【2】almosttothepointofpanic.Nowgen
Seariseasaconsequenceofglobalwarmingwouldimmediatelythreatenthatlargefractionoftheglobelivingatsealevel.Nea
A、Byreducingthegrowthofweeds.B、Bylettinganimalwastedothejobofnaturalfertilizer.C、Bykeepinggrasslandsingoodc
最新回复
(
0
)