Macbeth3 2021-10-22 09:23 采纳率: 100%
浏览 15
已结题

关于动态链表的问题,请问我这么写代码想实现一个存储字符类型的链表,哪里有问题?

源码如下:

#include<stdio.h>
#include<stdlib.h>

struct node
{
    char c;
    struct node* next;

};



int main(int argc,char argv[])
 
{
    int n;
    scanf_s("%d", &n);
    struct node* p_head, * p_tail, * p_new;
    p_head = (struct node*)malloc(sizeof(struct node));
    p_tail = p_head;
    int j;
    for (j = 0; j < n; j++)
    {
        p_new = (struct node*)malloc(sizeof(struct node));
        scanf_s("%c", &(p_new->c));
        p_tail->next = p_new;
        p_tail = p_new;
    }
    struct node* p = p_head->next;
    for (j = 0; j < n; j++)
    {
        printf("%c\n", p->c);
        p = p->next;
    }
    return 0;

 }

运行结果:

img

  • 写回答

1条回答 默认 最新

  • CSDN专家-link 2021-10-22 09:25
    关注
    #include<stdio.h>
    #include<stdlib.h>
    struct node
    {
        char c;
        struct node* next;
    };
     
    int main(int argc,char argv[])
    {
        int n;
        scanf_s("%d", &n);
        getchar();
        struct node* p_head, * p_tail, * p_new;
        p_head = (struct node*)malloc(sizeof(struct node));
        p_tail = p_head;
        int j;
        for (j = 0; j < n; j++)
        {
            p_new = (struct node*)malloc(sizeof(struct node));
            scanf_s("%c", &(p_new->c),1);
            getchar();
            p_tail->next = p_new;
            p_tail = p_new;
        }
        struct node* p = p_head->next;
        for (j = 0; j < n; j++)
        {
            printf("%c\n", p->c);
            p = p->next;
        }
        return 0;
     }
     
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月30日
  • 已采纳回答 10月22日
  • 创建了问题 10月22日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度