首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
2020-06-29
34
问题
使用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的花括号中填入所编写的若干语句。
1 #include
2 int fun(char*str,char ch)
3 {
4
5 }
6 void main()
7 {
8 char str[]={’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’i’,’j’,’k’,0);
9 char ch;
10 cout<<"请输入一个字符:"<
11 Cin>>ch;
i2 cout<<"输入数字的位置是:"<
13 return;
14 }
选项
答案
1 int low=0 ; //初始查找区间的下界 2 int high; 3 int k; 4 for(high=0;str[high]!=O ; high++) //求字符串长度 5 while(low
ch) 11 high=k一1; 12 else low=k+1; 13 } 14 if(str[10w]==ch) 15 return low; 16 return -1 ;
解析
根据题干中给出的二分法查找思想,从已给部分源程序的main主函数开始入手,核心函数int fun(char*str,char ch)中的ch参数为输入的字符,其中返回值为ch所在的位置。
[解题思路]
(1)首先,初始查找区间的下界为0。
(2)然后,求得字符串长度len,上界为len-1,查找区间的中后,k-(下界+上界)/2;若list[k]等于ch,查找成功。
(3)若list[k]>ch,则新的查找区间的下界不变,上界改为k.1:否则新的查找区间的下界改为k+1,上界不变。
转载请注明原文地址:https://kaotiyun.com/show/O48p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于C++函数的描述中正确的是()。
存在定义inta[10],x,*Pa;,若pa=&a[0],下列的哪个选项和其他3个选项不是等价的?
软件需求分析阶段的工作,可以分为4个方面:需求获取、需求分析、编写需求分析说明书和()。
对于浯句cout<<end1<<x;中的各个组成部分,下列叙述中错误的是()。
原因排除法属于()。
用以下语句调用库函数malloc,使字符指针st指向具有11个字节的动态存储空间,请填空。st=(char*)【】;
下列有关函数重载的叙述中,错误的是
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错,请改正程序中的错误,使程序输出的结果为m=-10n=-10p=0q=-10z=A注意:错误的语句在//******err
在C++程序中,如果要求通过函数来实现一种简单的功能,并且要求尽可能加快程序执行速度,则应该选用()。
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是
随机试题
相对数主要包括
对大多数工程项目来说,单位时间的资源消耗在整个使用范围内,通常是()
老年人服用磺酰脲类药物老年人服用华法林
影响评价的因素不包括
女性,26岁,右胸外伤,疼痛,呼吸急促,血压90/60mmHg。心率100次/分,神清,烦躁,轻度发绀,气管明显左移,右侧呼吸音消失,右胸壁皮下气肿,逐渐加重,治疗方法首选
患者,男,58岁。黏液血便1年,形体消瘦,面色白,腹泻,泻后痛减,腹痛喜热,形寒肢冷;肠鸣音活跃,舌淡,苔白,脉细。其证型是
关于盗窃罪的理解,下列哪一选项是正确的?(2011年卷二16题)
律师在诉讼与仲裁中,必须遵循一定的行为规范。根据相关规范的要求,下列哪些表述是正确的?()
年检主管部门在每年年检后,应当发布年检通告,对没有通过年检的旅行社,年检主管部门可以根据有关规定()。
Peoplehavewonderedforalongtimehowtheirpersonalitiesandbehaviorsareformed.Itisnoteasytoexplainwhyoneperson
最新回复
(
0
)