| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 352 人关注过本帖
标题:求输入一个字符数组,若该数组有一个字符与x相同,则将y插在x之后;否则,插 ...
只看楼主 加入收藏
longwang666
Rank: 1
等 级:新手上路
帖 子:6
专家分:3
注 册:2015-5-26
收藏
 问题点数:0 回复次数:0 
求输入一个字符数组,若该数组有一个字符与x相同,则将y插在x之后;否则,插在表尾。
#include<stdio.h>
#include<malloc.h>
struct link *DeleteNode(struct link *head,char y);
struct link
{
    char data;
    struct link *next;
};
void main()
{
    struct link *head,*p,*q;
    int i,n;
    char y;
    head=q=(struct link *)malloc(sizeof(struct link));
    printf("Input the length of the line:");
    scanf("%d",&n);
    printf("Input %d datas:",n);
    for(i=0;i<n;i++)
    {
        p=(struct link *)malloc(sizeof(struct link));
        scanf("%c",&p->data);
        p->next=NULL;
        q->next=p;
        q=p;
    }getchar();
    printf("Input y:");
    scanf("%c",&y);
    getchar();
    p=head->next;
    head=DeleteNode(head,y);
    while(p!=NULL)
    {
        printf("%c   ",p->data);
        p=p->next;
    }printf("\n");
}
struct link *DeleteNode(struct link *head,char y)
{   
    struct link *pr=head,*p=head,*temp=NULL;
    char x;
    pr=(struct link *)malloc(sizeof(struct link));
    pr->next=NULL;
    pr->data=y;
    printf("Input x:");
    scanf("%c",&x);
    getchar();
    while(p->data!=x && p->next!=NULL)
    {
        temp=p;
        p=p->next;
    }
    if(p->data==x)
    {   
        if(p==head)
        {
            pr->next=head->next;
            head->next=pr;
        }
        else
        {
            p=temp->next;
            pr->next=p->next;
            p->next=pr;
        }
    }
    else
    {
        p->next=pr;
    }
    return head;
}\\为什么得不到结果????请赐教,拜托了,现在急用!!!!!!!

[ 本帖最后由 longwang666 于 2015-5-27 12:18 编辑 ]
搜索更多相关主题的帖子: include 
2015-05-26 22:19
快速回复:求输入一个字符数组,若该数组有一个字符与x相同,则将y插在x之后;否 ...
数据加载中...
 
   



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

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