| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1289 人关注过本帖
标题:[原创]C++程序设计实践报告
只看楼主 加入收藏
wfpb
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2188
专家分:0
注 册:2006-4-2
收藏
 问题点数:0 回复次数:3 
[原创]C++程序设计实践报告

C++作业,分享


leCchqFg.rar (17.02 KB) [原创]C++程序设计实践报告


[此贴子已经被作者于2006-7-1 17:31:11编辑过]



778HYmMi.rar (16.88 KB) [原创]C++程序设计实践报告

搜索更多相关主题的帖子: 程序设计 实践 
2006-07-01 10:53
woodhead
Rank: 3Rank: 3
等 级:新手上路
威 望:9
帖 子:1124
专家分:0
注 册:2005-7-18
收藏
得分:0 
支持一下

感觉mylist的删除考虑的不全面,改了一下,不过没运行。

[CODE] void Delete(T &inform) //删除
{
bool found=false;

if( (head == tail) && (head->info == inform) ) //查找到,而且只有一个元素
{
delete head;
head = tail = 0;
found=true;
}
else if(head->info == inform) // 在表头,而且链表不止一个元素
{
tmp = head;
head = head->next;
delete tmp;
found=true;
}
else // 不在head
{
CNode<T> *tmp = head->next, *pred = head ;

while( (tmp != 0) && (tmp->info != inform) ) //查找
{
pred = tmp;
tmp = tmp->next;
}

if( tmp != 0 ) //找到
{
if( tmp == tail ) //是最后一个元素
tail = pred;
pred->next = tmp->next;
delete tmp;
found=true;
}
}
if(!found)cout<<"Cann't delete a nonentity information !"<<endl;
else cout<<"\n 删 除 成 功!"<<endl;
}[/CODE]

2006-07-01 14:14
wfpb
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2188
专家分:0
注 册:2006-4-2
收藏
得分:0 
to woodhead:
谢谢指出,说实话,我没太在意编这个,这只是我们C++的作业,我也就花了2,3个小时写的,的确是如此,我好蠢,这么低级的错误,呵呵~

[glow=255,red,2]wfpb的部落格[/glow] 学习成为生活的重要组成部分!
2006-07-01 16:18
wfpb
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2188
专家分:0
注 册:2006-4-2
收藏
得分:0 

刚才改了下:
void Delete(T &inform) //删除
{
bool found=false;CNode<T>* oldNode=NULL;
if(head==NULL) //空表
{cout<<"Can't delete from a empty list!\n";return;}
else if(head->next==NULL)//只有一个元素的表
{
if(head->info == inform)
{
delete head;delete tail;head=NULL;tail=NULL;found=true;
}
else found=false;
}
else
for(CNode<T>*newNode=oldNode=head;newNode;)
{
if(newNode->info==inform)
{
if(newNode==head)//元素在表头
{
head=head->next;//更新链表头
delete newNode;
}
else //不在表头
{
oldNode->next=newNode->next;
delete newNode;
}
found=true; //找到该数据
break;
}
else
{
oldNode=newNode;
newNode=newNode->next;
}
}
if(!found)cout<<"Cann't delete a nonentity information !"<<endl;
else cout<<"\n 删 除 成 功!"<<endl;
}


[glow=255,red,2]wfpb的部落格[/glow] 学习成为生活的重要组成部分!
2006-07-01 17:29
快速回复:[原创]C++程序设计实践报告
数据加载中...
 
   



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

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