首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
63
问题
使用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全国计算机二级
相关试题推荐
有如下程序:#include<iostream>usingnamespacestd;classONE{public:virtualvoidf(){cout<<"1";}};
C++源文件中包含的输入/输出头文件为()。
有以下程序:#include<iostream.h>classA{intx;public:A(intA){x=a;}friendclassB;
使用VC++6.0打开考生文件夹下的源程序文件1.cpp。本程序要求输入一个字符串,然后将其中的小写字母改成大写字母,字符可能输入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出到屏幕中。注意:不要改动main函数,不能增加或删除行,也
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示学生学号的类StuID,但类StuID的定义并不完整。请按要求完成下列操作,将类StuID的定义补充完整,使程序的运行结果为学生的学号为:20100401学生名
下列关于类成员对象构造函数调用顺序的叙述中,正确的是()。
以下关键字与类的访问权限无关的是
下列链表中,其逻辑结构属于非线性结构的是
设c1和c2是类MyClass的对象,若将运算符"+"和"*"作为类MyClass的成员函数重载,则表达式c1+c2*c1等价于
下列选项中,正确的C++表达式是
随机试题
干扰细菌细胞壁合成的抗菌药是
善治热淋者善治膏淋者
A.一次常用量B.3日常用量C.15日常用量D.7日常用量根据《处方管理办法》为门诊患者开具的麻醉药品注射剂,每张处方为
关于食管的解剖以下描述不正确的是
保税货物和减免税货物均属于海关监管货物,但海关对前者实行时效管理,对后者实行核销管理。()
下列选项中属于挪用资金罪的行为的有()。
监理规划作为指导项目监理机构全面开展监理工作的技术文件,应经()审核批准。
某校班主任李老师在批改作业时,发现学生高某的作业本中夹了一封写有×××收的信件,李老师顺便拆封阅读了此信。这是高某写给一位女同学的求爱信,李老师看了十分生气,后来在班会上宣读了此信,同时对高某提出了批评。次日高某在家留了一张字条后离家出走。高某的家长找到李
未成年工:是指年满16周岁未满18周岁的劳动者。据此定义,可判定( )
成为抗日战争取得完全胜利的重要标志的是()。
最新回复
(
0
)