问题及代码:
/*
* Copyright (c++) 2017, 烟台大学计算机学院
*All rights reserved,
* 文件名: main.cpp
* 作 者:王效杰
*完成日期:2017年 9月 12日;
* 第三周 :课后上机实践项目1
*/
#include <iostream>
#include <stdio.h>
#include <malloc.h>
#define MaxSize 50
typedef int ElmType;
using namespace std;
typedef struct
{
ElmType date[MaxSize];
int length;
}SqList;
void CreateList(SqList*&L,ElmType a[],int n);
bool listElmType(SqList*L);
void DispList(SqList*L);
int main()
{
SqList *sq;
ElmType x[6]= {1,2,3,4,5,6};
CreateList(sq,x,6);
DispList(sq);
return 0;
}
//初始化线性表
void CreateList(SqList*&L,ElmType a[],int n)
{
int i=0,k=0;
// SqList *L;
// L=new SqList;
L=(SqList*)malloc(sizeof(SqList));
while(i<n)
{
L->date[i]=a[i];
k++; i++;
}
L->length=k;
}
//判断线性表是否为空表
bool listElmType(SqList*L)
{
return(L->length==0);
}
//输出线性表
void DispList(SqList*L)
{
for(int i=0;i<L->length;i++)
cout<<L->date[i]<<endl;
}
运行结果:
知识点总结:
从这个程序中巩固了链表的相关知识,学会了“new”和“ malloc”的使用方法,练习了结构体的使用。
学习心得:
一开始写程序使没注意大小写的切换,最后导致编译频频出错,链表的知识还是得多加练习啊!