刚开始接触数据结构,请大神帮忙看一下!
#include<stdio.h>#define MaxSize 20//定义全局变量。
typedef struct//结构体的定义
{
int count[MaxSize];
int listlength;
}SeqList;
void InitList(SeqList l)//有序列表的初始化。
{
l.listlength=0;
}
void BaoCun(SeqList *l)//向有序列表中输入数据保存并显示。
{
int i=0,j;
printf("向有序列表中输入第一个数据\n");
scanf("%d",&l->count[i]);
printf("继续向有序列表中输入其它的数据\n");
while(l->count[i]!=0)
{
i++;
scanf("%d",&l->count[i]);
l->listlength++;
}
for(j=0;j<=l->listlength-1;j++)
printf("%d ",l->count[j]);
printf("序列表中有%d个元素\n",i);
printf("\n\n");
}
void InsList(SeqList *l,int n,int x)//在某个位置插入数据。
{
int i;
if(n<=l->listlength&&n>0)
{
for(i=l->listlength-1;i>=n-1;i--)
l->count[i+1]=l->count[i];
l->count[i]=x;
l->listlength++;
}
for(i=0;i<l->listlength;i++)
printf("%d ",l->count[i]);
}
void main()
{
int x,n;
SeqList list;
InitList(list);
BaoCun(&list);
printf("请输入要插入的数据的位置及其数据.输入格式为(3,5)\n");
scanf("%d,%d",&n,&x);
InsList(&list,n,x);
}
错误好像在向序列表中输入数据的时候把结束标志0也给保存在内存中了吧?如果是的话,请问能不能退格用空格赋值啊?请各位帮我解惑!!谢谢