太过平凡的小蚂蚁 2015-04-22 13:44 采纳率: 26.9%
浏览 1402

数据结构问题 求帮助 谢谢

//要求做一个放入学生的学号,姓名和成绩的顺表

#include
#include
#define MAXSIZE 100
//定义一个结构体类型放学生的基本信息
typedef struct{
char *name;
char *Nom;
char *secore;
}DataType;

DataType stu[MAXSIZE];//定义一个结构体数组

typedef struct{

DataType *data;//定义了一个数组
int length;
}SeqList;

//初始化这个顺序表
InitList(SeqList *L)
{

L->data=(DataType *)malloc(sizeof(DataType)*MAXSIZE);//申请一个这么大的空间
L->length=0;

}

//插入元素
void InsertList(SeqList *L,int location,DataType e)
{

int i=L->length;

//考虑插入的位置
//考虑插入是否会溢出
if(location<1 || location>L->length+1)
    printf("插入位置错误\n");

else if(location>=MAXSIZE)
    printf("空间溢出\n");
else
     while(i>=location)

       L->data[i+1]=L->data[i];
       L->data[i]=e;
       L->length++;

}

OutList(SeqList *L)
{

int length=1;

printf("2******2\n");
//判断表中是否有值
if(L->length==0)
printf("表中没有值\n");
else
while(length<=L->length)
{

printf("3******3\n");

        printf("%s %s %s\n",L->data[length].name,L->data[length].Nom,L->data[length].secore);
        length++;

    } 

}
void main()
{
int length;
int i;
int location;
SeqList L;

InitList(&L);

for(i=1;i<=2;i++)//理论最大一百,用i<=2来进行测试
{

printf("输入位置\n");
scanf("%d",&location);
printf("请依次输入学生姓名 学号 分数中间用空格分隔\n");
scanf("%s %s %s",&stu[i].name,&stu[i].Nom,&stu[i].secore);

InsertList(&L,location,stu[i]);
}
printf("1******1\n");

OutList(&L);

}

从测试结果看是输出函数出问题了,但是就是找不出来,请求帮助,谢谢!

  • 写回答

1条回答 默认 最新

  • G____yiyi 2015-04-22 14:24
    关注

    排版好乱不想看。。。

    评论

报告相同问题?

悬赏问题

  • ¥15 STM32F103上电短路问题
  • ¥15 关于#单片机#的问题:以ATMEGA128或相近型号单片机为控制器设计直流电机调速的闭环控制系统(相关搜索:设计报告|软件设计|流程图)
  • ¥15 打开软件提示错误:failed to get wglChoosePixelFormatARB
  • ¥15 (标签-python|关键词-char)
  • ¥15 python+selenium,在新增时弹出了一个输入框
  • ¥15 苹果验机结果的api接口哪里有??单次调用1毛钱及以下。
  • ¥20 学生成绩管理系统设计
  • ¥15 来一个cc穿盾脚本开发者
  • ¥15 CST2023安装报错
  • ¥15 使用diffusionbert生成文字 结果是PAD和UNK怎么办