求助,不知道哪里错了。

xuyan505 2012-06-26 09:23:10
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <conio.h>

#define ListSize 10
void Error(char *message)
{
printf("Error:%s\n",message);
exit(1);
}
struct SeqList
{
int data[ListSize];
int length;
};
void InitList(struct SeqList *L)
{
L->length=0;
}
void ListInsert(struct SeqList *L,int x,int i)
{
int j;
if(i<0||i>L->length)
Error("position error");
if(L->length>=ListSize)
Error("overflow");
for(j=L->length-1;j>=i;j--)
L->data[j+1]=L->data[j];
L->data[i]=x;
L->length++;
}
void DeleteList(struct SeqList *L,int i)
{
int j;
if(i<0||i>L->length-1)
Error("position error");
if(j=i+1;j<L->length;j++)
L->data[j-1]=L->data[j];
L->length--;
}
int main()
{
struct SeqList *SEQA;
int i;
SEQA=(struct SeqList *)malloc(sizeof(struct SeqList));
if(!SEQA)
Error("no space.\n");
InitList(SEQA);
for(i=0;i<ListSize;i++)
{
ListInsert(SEQA,i*10,i);
printf("%3d",SEQA->data[i]);
}
printf("\n");
DeleteList(SEQA,6);
DeleteList(SEQA,0);
DeleteList(SEQA,5);
for(i=0;i<SEQA->length;i++)
{
printf("%3d",SEQA->data[i]);
}
ListInsert(SEQA,1,0);
ListInsert(SEQA,2,3);
ListInsert(SEQA,3,9);
for(i=0;i<SEQA->length;i++)
printf("%3d",SEQA->data[i]);
_getch();
return 0;
}
在vc6.0下,编译后有三处错误,不知道哪里错了,望大神指点
...全文
52 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuyan505 2012-06-26
  • 打赏
  • 举报
回复
哎。。。我刚刚突然发现了。。不过还是谢谢啦。
qixing1115 2012-06-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <conio.h>

#define ListSize 10
void Error(char *message)
{
printf("Error:%s\n",message);
exit(1);
}
struct SeqList
{
……
[/Quote]
虽然没看,顶个
nk_wang 2012-06-26
  • 打赏
  • 举报
回复
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <conio.h>

#define ListSize 10
void Error(char *message)
{
printf("Error:%s\n",message);
exit(1);
}
struct SeqList
{
int data[ListSize];
int length;
};
void InitList(struct SeqList *L)
{
L->length=0;
}
void ListInsert(struct SeqList *L,int x,int i)
{
int j;
if(i<0||i>L->length)
Error("position error");
if(L->length>=ListSize)
Error("overflow");
for(j=L->length-1;j>=i;j--)
L->data[j+1]=L->data[j];
L->data[i]=x;
L->length++;
}
void DeleteList(struct SeqList *L,int i)
{
int j;
if(i<0||i>L->length-1)
Error("position error");

/*****************************/
//错误是你将for写成了if
/****************************/
for(j=i+1;j<L->length;j++)
L->data[j-1]=L->data[j];
L->length--;
}
int main()
{
struct SeqList *SEQA;
int i;
SEQA=(struct SeqList *)malloc(sizeof(struct SeqList));
if(!SEQA)
Error("no space.\n");
InitList(SEQA);
for(i=0;i<ListSize;i++)
{
ListInsert(SEQA,i*10,i);
printf("%3d",SEQA->data[i]);
}
printf("\n");
DeleteList(SEQA,6);
DeleteList(SEQA,0);
DeleteList(SEQA,5);
for(i=0;i<SEQA->length;i++)
{
printf("%3d",SEQA->data[i]);
}
ListInsert(SEQA,1,0);
ListInsert(SEQA,2,3);
ListInsert(SEQA,3,9);
for(i=0;i<SEQA->length;i++)
printf("%3d",SEQA->data[i]);
_getch();
return 0;
}

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧