标题:求助
取消只看楼主
haoti
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-10-11
 问题点数:0 回复次数:0 
求助
#include "sq_LList.h"

int main()
{sq_LList<double>s1(100);

cout<<"第一次输出寻许表对象"<<endl;
s1.prt_sq_LList();
s1.ins_sq_LList(0,1.5);
s1.ins_sq_LList(1,2.5);

s1.ins_sq_LList(4,3.5);
cout<<"第2次输出寻许表对象"<<endl;
s1.prt_sq_LList();
s1.del_sq_LList(0);
s1.del_sq_LList(2);
cout<<"第3次输出寻许表对象"<<endl;   
s1.prt_sq_LList();
return 0;}



#include<iostream>
using namespace std;
template<class T>
class sq_LList
{private:
int mm;
int nn;
T * v;
public:
    sq_LList(){mm=0;nn=0;return 0;}
    sq_LList(int);
    void prt_sq_LList();
    int flag_sq_LList();
    void ins_sq_LList(int,T);
    void del_sq_LList(int);
};
template<class T>
sq_LList<T>::sq_LList(int m)
{mm=m;
v=new T[mm];
nn=0;
return ;
}
template<class T>
void  sq_LList<T>::prt_sq_LList()
{int i;
cout<<"nn="<<nn<<endl;
for (i=0;i<nn;i++) cout << v[i]<<endl;
return ;}
template<class T>
int sq_LList<T>::flag_sq_LList()
{if (nn==mm)return(-1);
if (nn=0) return(0);
return(1);}
template<class T>
void  sq_LList<T>:: ins_sq_LList(int i, T b)
{int k;
if (nn==mm)
{cout<<"overflow"<<endl;
return ;}
if (i>nn) i=nn+1;
if (i<1) i=1;
for(k=nn;k>=i;k--)
  v[k]=v[k-1];
v[i-1]=b;
nn=nn+1;
return ;}
template<class T>
void  sq_LList<T>:: del_sq_LList(int i)
{int k;
if(nn=0)
{cout<<"underflow!"<<endl;return ;}
if((i<1)||(i>nn))
{cout<<"Not this element in the list "<<endl;return;}
for(k=i;k<nn;k++)
   v[k-1]=v[k];
nn=nn-1;
return ;
}
以上两段程序码是有关顺序表类的,在vc++6.0上运行后与书上给出的答案不符,书上的答案是
第一次```
nn=0
第2次```
nn=3
2.5
1.5
3.5
not thiselement in the list
第三次```
nn=2
2.5
3.5
而我在计算机上的是
第一次```
nn=0
第2次```
nn=3
2.5
1.5
3.5
Not this element in the list
Not this element in the list
第三次```
nn=0
不知是为什么
搜索更多相关主题的帖子: private include public double return 
2008-03-24 22:07



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-205139-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.026408 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved