<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>h11770858</title>
    <description>开开心心
为~</description>
    <link>http://h11770858.javaeye.com</link>
    <language>UTF-8</language>
    <copyright>Copyright 2003-2008, JavaEye.com</copyright>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>JavaEye - 做最棒的软件开发交流社区</generator>
      <item>
        <title>想了很久还是不知道怎么改程序</title>
        <author>h11770858</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://h11770858.javaeye.com">h11770858</a>&nbsp;
          链接：<a href="http://h11770858.javaeye.com/blog/138578" style="color:red;">http://h11770858.javaeye.com/blog/138578</a>&nbsp;
          发表时间: 2007年11月06日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          #include "iostream.h"<br />#include "stdlib.h"<br />#include "math.h"<br />#define  ElemType int<br />#define  OK       1<br />#define  ERROR    0<br />#define N          6<br />typedef struct LNode<br />{<br />	ElemType data;<br />	struct LNode  *next;<br />	int length;<br />}LNode,*LinkList;<br />LNode *creat_L();<br />void  out_L(LNode *L);<br />void  insert_L(LNode *L,int i ,ElemType e);<br />ElemType delete_L(LNode *L,int i);<br />int locat_L(LNode *L,ElemType e);<br /><br />int InitList_Sq(LinkList &L)<br />{<br />	L=(LNode*)malloc(sizeof(LNode));<br />    L->next=NULL;<br />    return OK;<br />}//初始化<br />int ListInsert_L(LinkList &L,int i,ElemType &e)<br /><br />{<br />	LNode *s,*p;int j;<br />	p=L,j=0;<br />	while(p&&j&lt;i-1){p=p->next;++j;}<br />	if(!p||j>i-1)return ERROR;<br />	s=(LinkList)malloc(sizeof(LNode));<br />	s->data=e;s->next=p->next;<br />	p->next=s;<br />	return OK;<br />}//输入<br />int ListDelete_L(LinkList &L,int i,ElemType &e)<br />{<br />	LNode *p,*q; int j; <br />    p=L,j=0;<br />    while(p->next&&j&lt;i-1){p=p->next;++j;}<br />    if(!(p->next)||j>i-1) return ERROR;<br />    q=p->next;p->next=q->next;<br />    e=q->data;free(q);<br />	return OK;<br />}//删除<br /> int GetElem_L(LinkList L,int i,ElemType &e)<br /> { <br />    LNode *p; int j;<br />   <br />	p=L->next;<br />	j=1;<br />	while(p&&j&lt;i){p=p->next;++j;}<br />	if(!p||j>i) return ERROR;<br />	e=p->data;<br />	return OK;<br />}//取表中第i个元素<br />int length_L(LinkList &L ,int i)<br />{  LinkList  p;<br />	i=0;<br />	p=L->next;<br />	while(p)<br />	{i++;p=p->next;}<br />	return i;<br />}//求表长<br />int ListElem_L(LinkList L,ElemType e)<br />{   int i;<br />	i=L[0].data;<br />while(i&&L[i].data!=e)i=L[i].data;<br />return i;<br />}<br />void print_L(LinkList L)<br />{<br />	LNode *p;<br />  p=L->next;   <br />  cout&lt;&lt;endl;<br />  while(p!=NULL) <br />  {  <br />	  cout&lt;&lt;p->data; <br />	  p=p->next;               <br />  }<br />} //显示<br />void main()<br />{ <br />	int i; ElemType e;<br />	LinkList L;<br />	InitList_Sq(L);<br /><br /> <br /> cout&lt;&lt;"1.建立单链表L"&lt;&lt;endl;<br /> cout&lt;&lt;"2.插入元素e"&lt;&lt;endl;<br /> cout&lt;&lt;"3.删除表中第i个元素"&lt;&lt;endl;<br /> cout&lt;&lt;"4.取表中第i个元素"&lt;&lt;endl;<br /> cout&lt;&lt;"5.退出"&lt;&lt;endl;<br /> cout&lt;&lt;"按数字键选择: "&lt;&lt;endl;<br /> int s;<br /> cin>>s;<br /> while(s!=4)<br /> {<br /> switch(s)<br /> {<br /> case 1:<br />             cout&lt;&lt;"输入几个元素组成单链表L"&lt;&lt;endl;<br />              for(i=1;i&lt;=N;i++)<br />			  {<br />				  cin>>e;ListInsert_L(L,i,e);<br />			  }<br />			  	print_L(L);<br />			  cout&lt;&lt;endl;<br />           //break;<br />case 2:<br />			  cout&lt;&lt;"向表中插入元素: "&lt;&lt;endl; <br />		  cin>>s;<br />		  cout&lt;&lt;endl;<br />		  ListInsert_L(L,i,s);<br />		  cout&lt;&lt;"插入后的单链表为: "&lt;&lt;endl;<br />		  print_L(L);<br />		  cout&lt;&lt;endl; //break;<br /> case 3:<br />		  cout&lt;&lt;"输入要删除的元素:"&lt;&lt;endl;<br />		  int s;<br />		  cin>>s;<br />		  i=0;<br />		  while(i&lt;N)<br />		  {<br />			  if(L->data==s)<br />			  {<br />				  ListDelete_L(L,i+1,e);<br />				  cout&lt;&lt;"删除的元素存在 :e="&lt;&lt;e&lt;&lt;endl;break;<br />			  }<br />              i++;<br />          }<br />		  if(i>=N) cout&lt;&lt;"要删除的元素不存在";<br />		  else<br />		  {<br />			  cout&lt;&lt;"删除后的单链表为: "&lt;&lt;endl;<br />			  print_L(L);<br />		  }<br />          cout&lt;&lt;endl;return;<br />	 //break;<br /> case 4:<br />		  cout&lt;&lt;"从表中查找元素: &lt;&lt;"&lt;&lt;endl;<br />		  cin>>s;<br />  		  cout&lt;&lt;endl;<br />          ListElem_L(L,e);<br />		  cout&lt;&lt;"插入后的单链表为: "&lt;&lt;endl;<br />		  print_L(L);<br />		  cout&lt;&lt;endl;return;<br />		  break; <br />	case 5:return;<br />	default:<br />	cout&lt;&lt;"按任意键退出!"&lt;&lt;endl;<br /><br /><br />	}<br />	<br /> }<br /><br /><br /><br />}<br /><br />编译结果是：<br />j:\数据结构\单链表\单链表.cpp(146) : warning C4700: local variable 'e' used without having been initialized<br /><br />单链表.obj - 0 error(s), 0 warning(s)
          <br/><br/>
          <span style="color:red;">
            <a href="http://h11770858.javaeye.com/blog/138578#comments" style="color:red;">已有 <strong>0</strong> 人发表留言，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 06 Nov 2007 17:22:51 +0800</pubDate>
        <link>http://h11770858.javaeye.com/blog/138578</link>
        <guid>http://h11770858.javaeye.com/blog/138578</guid>
      </item>
  </channel>
</rss>