| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 878 人关注过本帖
标题:请高手指点:以字符串为数据的单链表操作
取消只看楼主 加入收藏
kissjerry
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-2-25
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
请高手指点:以字符串为数据的单链表操作
#include <stdio.h>
#include <string.h>
#define null 0
typedef struct node{
 char *data;
 struct node *next;
 }linkstrnode;
typedef linkstrnode *linkstring;

main()
 {
 linkstring head;
 char *t;

 printf("\n please input the node of the linklist : ");
 printf("\n nodes data is string , and end of # \n");
 creatlinkstr(&head);
 printf("\n the source linklist is : \n");
 printing(head);
 printf("\n please input search string : ");
 gets(t);
 deletet(&head,t);
 printf("\n the final linklist is : \n");
 printing(head);
 }

creatlinkstr(linkstring head){
 char *t;
 linkstrnode *p;
 head=(linkstrnode *)malloc(sizeof(linkstrnode));
 head->next=null;
 printf("\n please input the node data(string),end of #");
 gets(t);
 while (strcmp(t,"#")!=0){
  p=head;
  while ((p->next)&&(strcmp(t,p->next->data))) p=p->next;
  if (p->next)
   printf("\n string %s existed",t);
   else {
    p->next=(linkstrnode *)malloc(sizeof(linkstrnode));
    p=p->next;
    strcay(p->data,t);
    p->next=null;
    }
    printf("\n please input the node data(string),end of # ");
    gets(t);
    }
    }

printing(linkstring head){
 linkstrnode *p;
 p=head->next;
 while(p){
  puts(p->data);
  p=p->next;
  }
  }
deletet(linkstring head,char *t){
 linkstrnode *p,*s;
 p=head;
 while ((p->next)&&(strcmp(p->next->data,t)))
 p=p->next;
 if (p->next){
  s=p->next;
  p->next=s->next;
  free(s);
  printf("\n delete successful!");
  }
 else printf("\n deletet failure!");
 }

本程序编译可以通过,但在gets(t)一直会有警告?
 
请高手指点迷津,跪谢!!!
搜索更多相关主题的帖子: 数据 字符 单链 
2010-02-25 20:34
kissjerry
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-2-25
收藏
得分:0 
对不起,我在线等

我更正下



strcpy
2010-02-25 21:14
kissjerry
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-2-25
收藏
得分:0 
warning:Possible use of 't' before definition in function main

可以运行,但是字符串无法打印出来
2010-02-25 21:33
快速回复:请高手指点:以字符串为数据的单链表操作
数据加载中...
 
   



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

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