阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。【说明】设计一个类模板SamPle用于对一个有序数组采用二分法查找元素下标。【C++程序】include < iostream. h >define Max 100 //最多元素个数template < class T >class Sample{T A[Max]: //存放有序数序int n: //实际元素个数publicSample( ) { } //默认构造函数Sample(T a[] ,int i); //初始化构造函数int seek(T c);void disp( ){for(int i=0;i <n;i ++)cout<<A[i] <<" ";cout<<endl:} } template < class T >Sample <T>: :Sample(T a[ ],int i){n=i:for( intj =0;j < i;j ++ )(1);}template < class T >int Sample < T >:: seek( T c){int low =0,high = n-1 ,mid;while((2)){mid = (low + high)/2;if((3))return mid;else if( (4) )low=mid+|;else(5);}return-1;}void main( ){char a[ ] ="acegkmpwxz";Sample < char > s(a, 1);cout<<"元素序列:" ;s. disp( );cout<<"元素'g'的下标:"<<s. seek('g') <<endl;}
阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。
【说明】
设计一个类模板SamPle用于对一个有序数组采用二分法查找元素下标。
【C++程序】
include < iostream. h >
define Max 100 //最多元素个数
template < class T >
class Sample
{
T A[Max]: //存放有序数序
int n: //实际元素个数
public
Sample( ) { } //默认构造函数
Sample(T a[] ,int i); //初始化构造函数
int seek(T c);
void disp( )
{
for(int i=0;i <n;i ++)
cout<<A[i] <<" ";
cout<<endl:
} } template < class T >
Sample <T>: :Sample(T a[ ],int i)
{
n=i:
for( intj =0;j < i;j ++ )
(1);
}
template < class T >
int Sample < T >:: seek( T c)
{
int low =0,high = n-1 ,mid;
while((2))
{
mid = (low + high)/2;
if((3))
return mid;
else if( (4) )
low=mid+|;
else
(5);
}
return-1;
}
void main( )
{
char a[ ] ="acegkmpwxz";
Sample < char > s(a, 1);
cout<<"元素序列:" ;s. disp( );
cout<<"元素'g'的下标:"<<s. seek('g') <<endl;
}
相关考题:
●试题六阅读以下说明和C++程序,将应填入(n)处的字句写在答题纸的对应栏内。【说明】设计一个类模板Sample用于对一个有序数组采用二分法查找元素下标。【C++程序】#includeiostream.h#define Max 100∥最多元素个数templateclass Tclass Sample{T A[Max]:∥存放有序数序int n:∥实际元素个数publicSample(){}∥默认构造函数Sample(T a[],int i);∥初始化构造函数int seek(T c);void disp(){for(int i=0;in;i++)coutA[i]"";coutend1:}};templateclass TSampleT::Sample(T a[],int i){n=i;for(intj=0;ji;j++)(1) ;}templateclass Tint SampleT::seek(T c){int low=0,high=n-1,mid;while( (2) ){mid=(low+high)/2;if( (3) )return mid;else if( (4) )low=mid+l;else(5) ;}return-1;}void main(){char a[]="acegkmpwxz";Samplechars(a,1。);cout"元素序列:";s.disp();cout"元素′g′的下标:"s.seek(′g′)endl;}
阅读以下说明和流程图,将应填入(n)处的字句写在对应栏内。【说明】已知头指针分别为La和lb的有序单链表,其数据元素都是按值非递减排列。现要归并La和Lb得到单链表Lc,使得Lc中的元素按值非递减排列。程序流程图如下所示:
阅读下列程序说明和C++程序,把应填入其中(n)处的字句,写在对应栏内。【说明】阅读下面几段C++程序回答相应问题。比较下面两段程序的优缺点。①for (i=0; i<N; i++ ){if (condition)//DoSomething…else//DoOtherthing…}②if (condition) {for (i =0; i<N; i++ )//DoSomething}else {for (i=0; i <N; i++ )//DoOtherthing…}
阅读以下说明和流程图,将应填入(n)处的字句写在对应栏内。[说明]下面的流程图用于计算一个英文句子中最长单词的长度(即单词中字母个数)MAX。假设该英文句子中只含字母、空格和句点“.”,其中句点表示结尾,空格之间连续的字母串称为单词。[流程图]
阅读下列说明和 C ++代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】某软件公司欲开发一款汽车竞速类游戏,需要模拟长轮胎和短轮胎急刹车时在路面上留 下的不同痕迹,并考虑后续能模拟更多种轮胎急刹车时的痕迹。现采用策略(Strategy)设计模式来实现该需求,所设计的类图如图 6-1 所示。【C++ 代码】#includeusing namespace std;class BrakeBehavior{public:(1) ; /*其余代码省略*/};class LongWheelBrake : public BrakeBehavior{public:void stop(){cout
阅读下列说明和C++-代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰(Decorator)模式实现打印发票的功能,得到如图5-1所示的类图。【C++代码】 #include using namespace std; class invoice{ public: (1){ cout
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】 某文件管理系统中定义了类OfficeDoc和DocExplorer,当类OfficeDoc发生变化时,类DocExplorer的所有对象都要更新其自身的状态,现采用观察者(Observer)设计模式来实现该需求,所设计的类图如图6-1所示。
阅读下列说明和?C++代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】阅读下列说明和?Java代码,将应填入?(n)?处的字句写在答题纸的对应栏内。【说明】某快餐厅主要制作并出售儿童套餐,一般包括主餐(各类比萨)、饮料和玩具,其餐品种类可能不同,但其制作过程相同。前台服务员?(Waiter)?调度厨师制作套餐。现采用生成器?(Builder)?模式实现制作过程,得到如图?6-1?所示的类图。