user-0 提问: 数据结构（c语言实现）火车票务系统，程序运行出现中断（我只写了一个函数）

回复:
user: user-1
content: 下面的scanf都没有写对  scanf("%s,p->data.num"); printf("起始站为："); scanf("%s,p->data.startstation"); printf("终点站为："); scanf("%s,p->data.stopstaion"); printf("首发时间："); scanf("%s,p->data.starttime"); printf("到达时间："); scanf("%s,p->data.stoptime"); printf("票价："); scanf("%f,p->data.price");  应该 		printf("列车号为："); 		scanf("%s",p->data.num); 		printf("起始站为："); 		scanf("%s",p->data.startstation); 		printf("终点站为："); 		scanf("%s",p->data.stopstation); 		printf("首发时间："); 		scanf("%s",p->data.starttime); 		printf("到达时间："); 		scanf("%s",p->data.stoptime); 		printf("票价："); 		scanf("%f",&p->data.price);

user: user-0
content: scanf那引号和单词拼写错了，我已经改了。但是问题还是那样

user: user-0
content: 0x00000032 处有未经处理的异常: 0xC0000005: Access violation

user: user-2
content: 报错是啥。CSDN论坛新手指南

user: user-0
content: 谢谢大家了，已经解决了

user: user-3
content: #include <stdio.h> #include <windows.h> #include <time.h> #include <string.h> #include <stdlib.h>   //定义存储火车信息的结构体 typedef struct train {     char num[10]; //列车号     char startstation[20];  //起始站     char stopstation[20];   //终点站     char starttime[10];     //首发时间     char stoptime[10];      //到达时间     double price;           //票价 }DataType; //定义该结构体  //定义存储结点的结构体  typedef struct LNode {     DataType data; //     struct LNode *next; } *LinkList;    void enter(LNode *head) //录入学生信息 {     LinkList p,r; //尾插法，p指向新结点，r指向尾结点     int i,n; //n表示列车数     r=head;     printf("请输入要输入的列车数：");     scanf("%d",&n);     printf("请输入列车信息：");     for(i=1;i<=n;i++);     {         p=(LinkList )malloc(sizeof(LNode));         p->next=NULL;         printf("列车号为：");         //scanf("%s,p->data.num");         scanf("%s", p->data.num);         printf("起始站为：");         //scanf("%s,p->data.startstation");         scanf("%s", p->data.startstation);         printf("终点站为：");         //scanf("%s,p->data.stopstaion");         scanf("%s", p->data.stopstation);         printf("首发时间：");         //scanf("%s,p->data.starttime");         scanf("%s", p->data.starttime);         printf("到达时间：");         //scanf("%s,p->data.stoptime");         scanf("%s", p->data.stoptime);         printf("票价：");         //scanf("%f,p->data.price");         scanf("%lf", &p->data.price);         r->next = p;  //工作指针中的数据付给尾结点         //r=r->next; //尾结点后移         r = p; //尾结点后移         printf("-----------------------------------------\n");     }  }   void menu()     //管理员菜单 {     LNode *head;     head=(LinkList)malloc(sizeof(LNode));     head->next=NULL;     int choice;     //用于记录管理员选择     printf("\t\t\t\t\t/**********欢迎来到管理员系统**********/\n");     printf("\t\t\t\t\t请选择您要进行的操作：\n");     printf("\t\t\t\t\t1、查看所有列车信息\n");     printf("\t\t\t\t\t2、增加列车信息\n");     printf("\t\t\t\t\t3、删除列车信息\n");     printf("\t\t\t\t\t4、修改列车信息\n");     printf("\t\t\t\t\t5、查找列车信息\n");     printf("\t\t\t\t\t6、录入列车信息\n");     printf("\t\t\t\t\t0、退出系统\n");     printf("请选择你要进行的操作（0-6）：\n");     scanf("%d",&choice);     system("cls");     //清屏     switch (choice)     {         case 1:             printf("基本列车信息如下：\n");              break;         case 2:              break;         case 3:              break;         case 4:               break;         case 5:              break;         case 6:             enter(head);             break;         case 0:             system("cls");      //清屏             printf("成功退出系统！！\n");             exit(0);         default :             printf("出错！！！！\n");             // choice1();     } }  int main ()      //主函数 {     system("color 70");     menu();     system("pause");     //防止闪退     return 0; }  供参考～  代码应该编译不过去，对比代码查一下自己的问题～