m0_72280754 2022-11-21 13:38 采纳率: 90.2%
浏览 5
已结题

求下面问题的完整代码。

【问题描述】输入一个字符串,以字符串中每个字符作为结点数据创建链表。删除链表中所有结点数据为非字母的结点。
【输入形式】输入一个字符串。
【输出形式】输出删除操作前、后的链表(删除操作前、后的链表均不会是空表)。
【样例输入】102a6vf
【样例输出】
102a6vf
avf
【样例输入】38IFfla045fDg
【样例输出】
38IFfla045fDg
IFflafDg

  • 写回答

3条回答 默认 最新

  • 关注

    基本的链表操作,代码如下:

    #include <stdio.h>
    #include <stdlib.h>
    typedef struct _node
    {
        char data;
        struct _node* next;
    }Node;
    
    int main()
    {
        Node* head, * p, * t;
        char str[1000];
        int i = 0;
        gets_s(str);
        head = (Node*)malloc(sizeof(Node));
        head->next = 0;
        p = head;
        while (str[i] != '\0')
        {
            t = (Node*)malloc(sizeof(Node));
            t->data = str[i];
            t->next = 0;
            p->next = t;
            p = t;
            i++;
        }
        //删除
        p = head;
        t = p->next;
        while (t)
        {
            if ((t->data >= 'a' && t->data <= 'z') || (t->data >= 'A' && t->data <= 'Z'))
            {
                p = t;
                t = t->next;
            }
            else
            {
                
                p->next = t->next;
                free(t);
                t = p->next;
            }
                
        }
        p = head->next;
        while (p)
        {
            printf("%c", p->data);
            p = p->next;
        }
            
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月5日
  • 已采纳回答 11月27日
  • 创建了问题 11月21日

悬赏问题

  • ¥15 mmocr的训练错误,结果全为0
  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀