注册 登录
编程论坛 数据结构与算法

每次输入学生个数就会显示停止工作 这是怎么回事啊 坐等

qq384200403 发布于 2013-03-21 19:24, 833 次点击
#include<stdio.h>
#define MAXLEN 50   
typedef struct
{    char  name;      
    int   number;     
    char  sex;        
    char  nativeplace;  
   
  } datatype;
typedef struct
{
    datatype List[MAXLEN];   
int  num;      
} Seqlist;
Seqlist  *L;
void main ()
{
   
       int n,i=0;
    printf("输入学生个数");
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        printf("请输入第%d个学生 姓名 学号 性别 籍贯 \n",i+1);
        scanf("%s%d%s%s",L->List[i].name,&L->List[i].number,L->List[i].sex,L->List[i].nativeplace);
    }
        
   

}
只有本站会员才能查看附件,请 登录
6 回复
#2
cherish——2013-03-21 20:49
我初看一眼  感觉主函数里面各种错误 L神马的都没定义   而且也不知道这是要实现神马功能呢
#3
凌云飞翔2013-03-21 21:03
typedef struct
{    char  name;      
    int   number;     
    char  sex;        
    char  nativeplace;  
   
这里面的  char 定义成数组吧
#4
qq3842004032013-03-21 21:35
回复 2楼 cherish——
已经解决了 没给L 申请空间  我之前已经定义的L了啊   是顺序表啊
#5
azzbcc2013-03-21 22:13
回复 4楼 qq384200403
你没发现自己定义的L是一个指针么?
#6
qq3842004032013-03-22 17:03
回复 5楼 azzbcc
     Seqlist   *L      的意思是 声明一个SepList类型的指针  没问题吧 它是指针 可她的类型是Seqlist 类型的啊不对吗?
#7
飞黄腾达2013-03-25 21:33
在main函数里加一句:
L=(Seqlist)malloc(sizeof(Seqlist));
1