首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*str,char ch),本函数采用二分法,在已按字母次序从小到大排序的字符数组s仃中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否则返回一1。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*str,char ch),本函数采用二分法,在已按字母次序从小到大排序的字符数组s仃中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否则返回一1。
admin
2020-05-14
72
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*str,char ch),本函数采用二分法,在已按字母次序从小到大排序的字符数组s仃中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否则返回一1。 ;
二分法查找的思想是:初始查找区间的下界为0,上界为1en-1,查找区间的中后,k=(下界+上界)/2;若list[k1等于ch,查找成功;若list[k]>ch,则新的查找区间的下界不变,上界改为k-1;否则新的查找区间的下界改为k+1,上界不变。在新区间内继续用二分法查找。
注意:请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
#include<10Stream.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<<“请输入一个字符:”<
cin>>ch,
cout<<“输入数字的位置是:”<
return;
}
选项
答案
int low=0, //初始查找区间的下界 int high; int k ; for(high=0;str[high]!=0 ; high++) //求字符串长度 while(10w
ch) high=k一1 ; else low=k+1 ; } if(str[low]==ch) return low; 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/Vv8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若执行以下程序时从键盘上输入9,则辅出结果是 main() {int n; cin>>n; if(n++<10)cout<<n<<endl; else cout<<n--<<endl; }
重载输入流运算符>>必须使用的原型为()。
静态数据成员是为()的数据。
C++语言的基本控制结构为顺序结构、选择结构和______。
下列程序是用来判断数组中特定元素的位置所在,则输出结果为#include<conio.h>#include<iostream.h>intfun(int*s,intt,int*k){inti;*k
下选项中不属于c++的类型的是______。
对于一个类定义,下列叙述中错误的是()。
在软件测试设计中,软件测试的主要目的是()。
设一棵完全二叉树共有700个结点,则在该二叉树中有【】个叶子结点。
一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为( )
随机试题
意识是自然界长期发展的产物。这说明
腰痛最常见的原因是
关于过敏性紫癜描述不正确的是
下列关于颞下颌关节紊乱病叙述错误的是
在项目前期的策划中,项目开发经营期内房地产市场预期发展研判的主要内容不包括()。
设结点结构为(data,link),试用一个全局指针p和某种链接结构实现一个队列,画出示意图,并给出入队addq和出队deleq过程,要求它们的时间复杂性都是D(1)(不计new和dispose时间)。
关于t分布与标准正态分布两者之间的关系,正确的表述是()
(1)Whatmakesagreatcommunicator?Awillingnesstosharethatdrivingsenseofmissionandaburningfaiththatotherswillem
Theythink____________(做同样工作的女性比男性获得的报酬少简直是荒谬透顶)
A、Branches.B、Grasses.C、Mud.D、Straw.C第3种鸟是ovenbird,而题目询问灶巢鸟的窝是用什么做的。关键是要听到“这个窝是用泥巴做的。”故C正确。此外,原文提到OvenBird时,三次提及了mud这个单词,应该
最新回复
(
0
)