题目内容
阅读以下说明和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;
}
查看答案
搜索结果不匹配?点我反馈
更多问题