首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

关于链表输入输出有关问题

2012-02-29 
关于链表输入输出问题include stdio.h#definemaxsize100structstudent{charnum[10]charname[10]charse

关于链表输入输出问题
include <stdio.h>
#define   maxsize   100

struct   student
{     char   num[10];
      char   name[10];
      char   sex[2];
      char   tel[15];
      char   addr[50];
};
struct   list
{     int   len;
      struct   student   stu[maxsize];
};


struct   list   ListInit(struct   list   L)
{     L.len=0;
      return(L);
}


struct   list   ListCreate(struct   list   L)
{     int   i=0;
      char   x1[10],x2[10],x3[2],x4[15],x5[50];
      char   ch;
      do
      {     printf( "\nNum: ");   fflush(stdin);
            scanf( "%c ",x1);     fflush(stdin);
            printf( "\nName: ");
            scanf( "%c ",x2);     fflush(stdin);
            printf( "\nSex: ");
            scanf( "%c ",x3);     fflush(stdin);
            printf( "\nTel: ");
            scanf( "%c ",x4);     fflush(stdin);
            printf( "\nAddr: ");
            scanf( "%c ",x5);     fflush(stdin);
            strcpy(L.stu[i].num,x1);
            strcpy(L.stu[i].name,x2);
            strcpy(L.stu[i].sex,x3);
            strcpy(L.stu[i].tel,x4);
            strcpy(L.stu[i].addr,x5);
            i++;
            ch=getchar();
      }   while(ch!= '0 ');
      L.len=i;
      return(L);
}


void   ListPrint(struct   list   L)
{     int   i;
      for(i=0;i <L.len;i++)
      {     printf( "\nNum:%s\nName:%s\nSex:%s\nTel:%s\nAddr:%s\n ",L.stu[i].num,L.stu[i].name,L.stu[i].sex,L.stu[i].tel,L.stu[i].addr);
      }
      printf( "\n ");
}


void   main()
{     struct   list   L;
      L=ListInit(L);
      L=ListCreate(L);
      ListPrint(L);
}

输出好像还有点问题哦!
不知道哪里错误!郁闷了

应该怎么实现输入和输出才是最好的呢?
多个字符串     scanf();的输入应该怎么办呢?
是不是应该分多行写?
那么输出呢?



[解决办法]
scanf函数的格式说明符不是%s吗???????据我在课本上看到~字符串的输入调用scanf函数是格式说明符号是%s的......

热点排行