10_2.cpp
资源名称:c.rar [点击查看]
上传用户:puke2000
上传日期:2022-07-25
资源大小:912k
文件大小:1k
源码类别:

C#编程

开发平台:

Visual C++

  1. //10_2
  2. #include <iostream.h>
  3. #include <string.h>
  4. struct Node{
  5.   char str[20];
  6.   Node* next;
  7. };
  8. void Insert(Node*& head);
  9. void main()
  10. {
  11.   Node* p;
  12.   Node* x=new Node;
  13.   strncpy(x->str,"hello",20);
  14.   x->next = NULL;
  15.   p =x;
  16.   x=new Node;
  17.   strncpy(x->str,"jone",20);
  18.   x->next = p;
  19.   p=x;
  20.   x=new Node;
  21.   strncpy(x->str,"good",20);
  22.   x->next = p;
  23.   p=x;
  24.   x=new Node;
  25.   strncpy(x->str,"better",20);
  26.   x->next = p;
  27.   p=x;
  28.   cout <<"n插入之前:n";
  29.   for(Node* pT=p; pT; pT=pT->next)
  30.     cout <<pT->str <<"->";
  31.   cout <<"0n";
  32.   Insert(p);
  33.   cout <<"n插入之后:n";
  34.   for(Node* pT=p; pT; pT=pT->next)
  35.     cout <<pT->str <<"->";
  36.   cout <<"0n";
  37. }
  38. void Insert(Node*& head)
  39. {
  40.   Node* p=new Node;
  41.   strncpy(p->str,"marit",20);
  42.   head->str[19]='';
  43.   if(!head){
  44.     head = p;
  45.     p->next = NULL;
  46.     return;
  47.   }
  48.   if(!strcmp(head->str, "jone")){
  49.     p->next = head;
  50.     head = p;
  51.     return;
  52.   }
  53.   Node* sp;
  54.   for(sp=head; sp->next&& strcmp(sp->next->str,"jone"); sp=sp->next);
  55.   p->next = sp->next;
  56.   sp->next = p;
  57. }