在输入完数据的数量后,还要输入一个数才进行下一步,为啥呀?
#include<stdio.h>
#define MAXSIZE 100
typedef int DataType;
typedef struct {
DataType data[MAXSIZE];
int Length;
}SeqList;
void InitList(SeqList *L) { //初始化线性表
L->Length = 0;
}
void CreatList(SeqList* L, int n) { //建立顺序表并输入多个元素
int i;
printf("请输入%d个整数:", n);
if (n>MAXSIZE) {
printf("overflow");
return 0;
}
for (i = 0;i < n;i++) {
scanf("%d", &L->data[i]);
}L->Length = i;
}
void Length(SeqList* L) {
int i;
for (i = 0;L->data[i] != NULL;i++);
return i;
}
void DisList(SeqList * L) {
int i=0;
for (i = 0;i<L->Length;i++) {
printf("%5d",L->data[i]);
}
}
int main() {
SeqList L;
int n=0;
InitList(&L);
printf("请输入建立线性表的个数: \n");
scanf("%d ",&n);
CreatList(&L, n);
printf("建立的线性表为:");
DisList(&L);
return 0;
}