首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
2018-10-23
43
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*str,char ch),本函数采用二分法,在已按字母次序从小到大排序的字符数组str中,查找字符ch,若,ch在数组中,函数返回字符ch在数组中的下标,否则返回-1。
二分法查找的思想是:初始查找区间的下界为0,上界为leI-1,查找区间的中后,k=(下界+上界)/2;若lrst[k]等于ch,查找成功;若list[k]>ch,则新的查找区间的下界不变,上界改为k-1;否则新的查找区间的下界改为k+1,上界不变。在新区间内继续用二分法查找。
注意:请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
1 #include<iostream.h>
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<<’’请输入一个字符:’’<<end1;
11 cin>>ch;
12 cout<<"输入数字的位置是:’’<<fun(str,ch)<<end1;
13 return;
14 }
选项
答案
1 int low=0; //初始查找区间的下界 2 int high; 3 int k; 4 for(high=0;str[high]!=0;high++)//求字符串长度 5 while(low<high)//循环判断字符位置 6 { 7 k=(low+high)/2; 8 if(str[k]==ch) 9 return k; 10 else if(str[k]>ch) 11 high=k-1; 12 else low=k+1; 13 } 14 if(str[low]==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/45Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
对于以下带参数的main()函数的第二形参,voidmain(intargc,______),不可能的形式是
以下关于友元函数的叙述不正确的是
假定MyClass为一个类,则该类的拷贝构造函数的声明语句为
下列程序的输出结果是main(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}cou
若已定义inta[]={1,2,3,4,5,6,7,8,9,10},p=a,i=5;则对数组元素的不正确的引用是()。
下面程序的结果是()。#include<iostream.h>classA{inta;public:A():a(1){}voidshowa(){cout<<a;}};Cl
下列程序输出的结果是()。#include<stdio.h>un1(chara,charb){charc;c=a;a=b;b=c;}fun2(char*a,charb){charc;c=*a;*a=b;b=c;}
关系模型允许定义3类数据约束,下列不属于数据约束的是()。
下列有关数据库的叙述,正确的是()。
在声明派生类时,如果不显式地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义:classBase{protected:voidfun(){}};classD
随机试题
在公关组织机构中,属于非官方、非营利的群众社团组织的是()。
A.Actually,thereareanumberofwaystolearnEnglishwell,suchasbyrecitationandreading.B.Believeitornot,weha
麻黄、通草松香、芦荟
可行性研究阶段投资估算的精度要求为:误差控制在±()%以内。【2014年真题】
某企业生产甲、乙、丙、丁四种产品,各种产品在车床组的台时定额分别为85台时,60台时,40台时,110台时;车床组共有车床20台,一年的有效工作时间为2800小时;计划甲、乙、丙、丁四种产品年产量为300台、170台、120台、135台。生产能力按其技
我国被称为“世界屋脊”的高原是指()。
古人说:“操千曲而后晓声,观千剑而后识器。”从哲学上来看,这里主要强调的是()
阅读下列材料,回答以下问题。材料一:党的十九大报告指出,改革开放之初,我们党发出了走自己的路、建设中国特色社会主义的伟大号召。从那时以来,我们党团结带领全国各族人民不懈奋斗,推动我国经济实力、科技实力、国防实力、综合国力进入世界前列,推动我国国际地位
设有A、B、C、D四台主机都处在同一个物理网络中,A主机的IP地址是192.155.12.112,B主机的IP地址是192.155.12.120,C主机的IP地址是192.155.12.176,D主机的IP地址是192.155.12.222。共同的子网掩码
Accordingtotheman,whichoneisNOTthepossiblefactorofsuccess?
最新回复
(
0
)