m0_62793944 2022-03-18 15:35 采纳率: 100%
浏览 16
已结题

经常遇到Segmentation这个错误,看了300遍

问题遇到的现象和发生背景

输入输出一个学生信息


#include<bits/stdc++.h>
using namespace std;
struct ElementType{
    char id[20];
    char name[30];
    char sex[5];
    double x,y,z;
};
typedef struct Node{
    ElementType data;
    struct Node *next; 
}Node,*LinkList;
LinkList createList()               //创建单链表 
{
    LinkList L;
    L=(LinkList)malloc(sizeof(Node));
    L->next=NULL;
}
int find(LinkList L,LinkList S)
{
    LinkList p;
    p=L->next;
    while(p!=NULL){
        if(strcmp(p->data.id,S->data.id)==0) return 0;
        p=p->next;
    }
    return 1;
}
LinkList input()
{
    LinkList S;
    S=(LinkList)malloc(sizeof(Node));
    scanf("%s%s%s",S->data.id,S->data.name,S->data.sex);
    scanf("%lf%lf%lf",&S->data.x,&S->data.y,&S->data.z);
    return S;
}
void charu(LinkList L,LinkList S)
{
    LinkList p,pre;
    pre=L;
    p=L->next;
    while(p!=NULL){
        pre=p;
        p=p->next;
    }
    S->next=pre->next;
    pre->next=S;
}
void output(LinkList S)
{
    printf("%s %s %s ",S->data.id,S->data.name,S->data.sex);
    printf("%.1f %.1f %.1f\n",S->data.x,S->data.y,S->data.z);
}
int main(){
    char order[20];
    LinkList L;
    LinkList S;
    L=createList(); 
    while(1){
        scanf("%s",order);
        if(!strcmp(order,"Insert")){
            puts("Insert:");
            S=input();
            if(find(L,S)){
                charu(L,S);
                output(S);
            }
            else printf("Failed\n");
        }
        else{
            puts("Good bye!");
            break;
        }
    }
    return 0;
}

img

问题相关代码,请勿粘贴截图
运行结果及报错内容

Error:Segmentation

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 3月26日
    • 创建了问题 3月18日

    悬赏问题

    • ¥15 配置hadoop时start-all.sh老是启动失败
    • ¥30 这个功能用什么软件发合适?
    • ¥60 微信小程序,取消订单,偶尔订单没有改变状态
    • ¥15 用pytorch实现PPO算法
    • ¥15 关于调制信号的星座图?
    • ¥30 前端传参时,后端接收不到参数
    • ¥15 这是有什么问题吗,我检查许可证了但是显示有呢
    • ¥15 机器学习预测遇到的目标函数问题
    • ¥15 Fluent,液体进入旋转区域体积分数不连续
    • ¥15 java linux下将docx文件转pdf