too few actual parameters

#include"stdio.h"/*顺序表方式的实现*/#include"malloc.h"#definemaxsize1024typedefchardatatype;... #include"stdio.h" /*顺序表方式的实现*/
#include"malloc.h"
#define maxsize 1024

typedef char datatype;
//typedef int Elemtype;
typedef struct LNode
{
datatype data[maxsize];
datatype dat;
struct LNode *next;
int last;
int length;
}sequenlist;

/*建立顺序表*/
void creatlist(sequenlist *L)
{
int n,i;
char tmp;
printf("请输入数据的个数:\n");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("data[%d]=",i);
fflush(stdin); /*清除缓存*/
scanf("%c",&tmp);
L->data[i]=tmp;
}
L->last=n-1;
printf("\n");
}
int GetElem(sequenlist *L,datatype Item)
{ sequenlist *p=L->next;
int i=1;
while(p!=NULL&&p->dat!=Item)
{
p=p->next;
i++;
}
if(p==NULL)
return(0);
else
return(i);
}
int dellist(sequenlist *L,int i,datatype Item)
{
int j=0;
sequenlist *p=L,*q;
while(j<i-1&&p!=NULL)
{
j++;
p=p->next;
}
if(p==NULL)
return 0;
else
{
q=p->next;
if(q==NULL)return 0;
Item=q->dat;
p->next=q->next;
free(q);
return 1;
}
}

void printout(sequenlist *L)
{
int i;
for(i=0;i<=L->last;i++)
{
printf("data[%d]=",i);
printf("%c\n",L->data[i]);
}
}

main()
{
sequenlist *L;datatype Item;
char cmd,x;
int i;
L=(sequenlist *)malloc(sizeof(sequenlist));/*指针在使用前要初始化*/
creatlist(L);
printout(L);
do
{
printf("1,del\n");
printf("2,exit\n");
do
{
fflush(stdin);
scanf("%c",&cmd);
}while((cmd!='1')&&(cmd!='2'));
switch(cmd)
{ case '1':
printf("请输入你要删除元素:");
fflush(stdin);
scanf("%d",&Item);
GetElem(L,Item);
dellist(L,i);
printout(L);
break;
}
}while(cmd!='2');

}
为什么会出现error C2198: 'dellist' : too few actual parameters
执行 cl.exe 时出错啊?!麻烦会的友友速速回答下。。。。在下感激不尽!!!
改好了,可是进行删除操作的时候就会崩溃掉。。。。希望高人再施援手!!!
展开
 我来答
zrj_bd
推荐于2017-09-15 · TA获得超过1870个赞
知道小有建树答主
回答量:647
采纳率:100%
帮助的人:1103万
展开全部
错误提示:调用delist函数的时候,少了一个实参,所以把dellist(L,i);改为dellist(L,i, Item);//加个实参Item 就可以了。

补充:
你的代码里面好像还有其他的问题
陈学阳
2010-10-16 · TA获得超过2.8万个赞
知道大有可为答主
回答量:2.1万
采纳率:14%
帮助的人:5595万
展开全部
/*给改好了, 看看吧*/

#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
#define MAX_VERTEX_NUM 20
typedef struct ArcNode{
int adjvex;
struct ArcNode *nextarc;
}ArcNode;
typedef struct VNode{
char data;
ArcNode *firstarc;
}VNode,AdjList[MAX_VERTEX_NUM];
typedef struct{
AdjList vertices;
int vexnum,arcnum;
}ALGraph;
int CreatArcList(ALGraph *p)
// 需要返回值
void main()
{
int a;
ALGraph A;
A.vexnum=10;
A.arcnum=12;
a=CreatArcList(&A); //实参不用加类型了
}

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

vaela
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xnjbnx
2010-10-16
知道答主
回答量:79
采纳率:0%
帮助的人:34.6万
展开全部
希望你到饭客安全网络基地去看看或者去学习下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式