经过窗前 2022-03-22 20:18 采纳率: 100%
浏览 79
已结题

关于#链表#的问题,如何解决?

利用链表记录输入的学生信息(学号、姓名、性别、年龄、得分、地址)。其中,学号长 度不超过 20, 姓名长度不超过 40, 性别长度为 1, 地址长度不超过 40

输入说明
包括若干行,每一行都是一个学生的信息,如: 00630018 zhouyan m 20 10.0 28#460 输入的最后以"end"结束
输出说明
将输入的内容倒序输出。每行一条记录,按照 学号 姓名 性别 年龄 得分 地址 的格式输出
我写的代码在VS上是对的,但是在平台提交零分,是哪里不合题意吗,还是输入方式太鸡肋了


#include<stdio.h>
#include<malloc.h>
#define LEN sizeof(struct Student)
typedef struct Student
{
    char num[20];
    char name[40];
    char sex;
    int age;
    int score;
    char address[40];
    struct Student* next;
}student;
int main()
{
    char c = '\0';
    student* p1 = NULL, * p2 = NULL, * head = NULL, * L, * p;
    L = (student*)malloc(LEN); L->next = NULL;
    while (c != '\n')
    {
        p1 = (student*)malloc(LEN);
        scanf_s("%s", p1->num, 20);
        scanf_s("%s", p1->name, 40);
        c = getchar();
        scanf_s("%c", &p1->sex,1);
        scanf_s("%d", &p1->age);
        scanf_s("%d", &p1->score);
        scanf_s("%s", p1->address, 40);
        c = getchar();
        if (head == NULL)
            head = p1;
        else
            p2->next = p1;
        p2 = p1;
    }
    p1->next = NULL;
    L->next = head;
    p1 = p2 = L->next; p1 = p1->next;
    L->next = NULL;
    while (p1)
    {
        p2->next = L->next;
        L->next = p2;
        p2 = p1;
        p1 = p1->next;
    }
    p = L->next;
    while (p)
    {
        printf("%s ", p->num);
        printf("%s ", p->name);
        printf("%c ", p->sex);
        printf("%d ", p->age);
        printf("%d ", p->score);
        printf("%s ", p->address);
        printf("\n");
        p = p->next;
    }
    return 0;
}
}
  • 写回答

1条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

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

      悬赏问题

      • ¥30 VB6.0操作 webview2内核的浏览器如何精确实现网页弹窗处置
      • ¥15 pr导出的视频打不开,提示“缺少编解码器”怎么解决
      • ¥15 html里js获取php参数值不成功,帮改代码
      • ¥20 如何控制ant design的InputNumber组件 最多输入5位小数
      • ¥15 c语言学生基本信息管理系统
      • ¥100 火车头采集器采集求解
      • ¥88 关于#运行时间 时间重叠 和非重叠#的问题,如何解决?
      • ¥15 C语言,密切接触者追踪
      • ¥20 关于计算机网络问题,请附带讲解
      • ¥30 自动识别图像目标并判断