首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

小弟我没错啊

2012-03-21 
我没错啊!!!includestdio.h #defineN7typedefstructnode{intflagintsecretstructnode*next}linklist

我没错啊!!!
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
声明语法错误,但我认为没错,哪个大侠帮忙看下



[解决办法]
void creat(linklist *head)

后面是不是少个分号
[解决办法]
#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;

}
[解决办法]
就是少了个分号,一般出现声明错误,而且标记在main()行上都是函数声明时出问题的。
[解决办法]
错误1:第一行,include ,没有加# (估计是拷贝的问题)
错误2:如果使用malloc这样的函数,请在前面包含stdlib.h头文件
错误3:void creat(linklist *head),后面没有加分号

警告:main函数定义应该有返回值的定义

热点排行