我没错啊!!!

ljb295 2007-09-16 07:55:49
include "stdio.h"
#define N 7

typedef struct node
{
int flag;
int secret;
struct node *next;
} linklist;

void creat(linklist *head)

main()
{
linklist *head,*p,*q;
int a[N],inital,i=0,m=0;
creat(head);
printf("\nPlease input the inital number :");
scanf("%d",&inital);
p=head;
while(p->next!=NULL && i<inital)
{
q=p;
p=p->next;
i++;
if(i==inital)
{
i=0;
inital=p->secret;
a[m++]=p->flag;
q->next=p->next;
q=p;
p=p->next;
free(q);
}
}

}


void creat(linklist *head)
{
int secret,i;
linklist *s,*r;
i=1;
head=(linklist*)malloc(sizeof(linklist));
r=head;

while(i<=N)
{
printf("\n Please input the secret and end with pressing enter key\n");
printf("\nNumber:%d",i);
scanf("%d",secret);
s=(linklist*)malloc(sizeof(linklist));
s->flag=i;
s->secret=secret;
r->next=s;
r=s;
i++;
}
r->next=head->next;

}

这样一个程序,运行时总提示:Declaration syntax error
声明语法错误,但我认为没错,哪个大侠帮忙看下

...全文
152 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
kexin_online 2007-09-17
  • 打赏
  • 举报
回复
错误1:第一行,include ,没有加# (估计是拷贝的问题)
错误2:如果使用malloc这样的函数,请在前面包含stdlib.h头文件
错误3:void creat(linklist *head),后面没有加分号

警告:main函数定义应该有返回值的定义
jyycool 2007-09-16
  • 打赏
  • 举报
回复
就是那个问题,哎没人给我回答啊
ren_xu123 2007-09-16
  • 打赏
  • 举报
回复
就是少了个分号,一般出现声明错误,而且标记在main()行上都是函数声明时出问题的。
yydrewdrew 2007-09-16
  • 打赏
  • 举报
回复
#include "stdio.h"
#include <malloc.h>
#define N 7

typedef struct node
{
int flag;
int secret;
struct node *next;
} linklist;

void creat(linklist *head);

void main()
{
linklist *head,*p,*q;
int a[N],inital,i=0,m=0;
creat(head);
printf("\nPlease input the inital number :");
scanf("%d",&inital);
p=head;
while(p->next!=NULL && i<inital)
{
q=p;
p=p->next;
i++;
if(i==inital)
{
i=0;
inital=p->secret;
a[m++]=p->flag;
q->next=p->next;
q=p;
p=p->next;
free(q);
}
}

}


void creat(linklist *head)
{
int secret,i;
linklist *s,*r;
i=1;
head=(linklist*)malloc(sizeof(linklist));
r=head;

while(i<=N)
{
printf("\n Please input the secret and end with pressing enter key\n");
printf("\nNumber:%d",i);
scanf("%d",secret);
s=(linklist*)malloc(sizeof(linklist));
s->flag=i;
s->secret=secret;
r->next=s;
r=s;
i++;
}
r->next=head->next;

}
星羽 2007-09-16
  • 打赏
  • 举报
回复
void creat(linklist *head)

后面是不是少个分号
ljb295 2007-09-16
  • 打赏
  • 举报
回复
提示的是main()错误
lockhall 2007-09-16
  • 打赏
  • 举报
回复
看编译器提示哪边语法错误啊。

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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