问题描述
- 总是出现 undeclared identifier,但是我已经定义了
-
#include
#include
#include
#include
#include
int Student=0;//总人数
int N;
int Mark[100];
int Mark1[100];
struct student *Head;
struct student
{
char Name[20];
char Snum[20];
char Sex[4];
};
typedef struct node
{
char name[20];
char snum[20];
char sex[4];
struct node *pnext;
}node,*pnode;//类型声明
struct student *GetData();//文件导入
pnode create_list();//创建链表
void traverse_list(pnode phead);//遍历链表输入
int length_list(pnode phead);//链表长度
void sort_list(pnode phead);//学号正排序
void inverse_list(pnode phead);//学号反排序
void delete_list(pnode phead);//链表删除
int insert_list(pnode phead);//链表插入
void main()
{
srand(time(NULL));//随机函数初始化
pnode head=NULL;//建空链表
head=create_list();//链表头指针地址返回head
printf("n");
traverse_list(head);//原链表正排序
sort_list(head);
printf("1.按照学号大小正排序后:n");
traverse_list(head);
int pos;
pos=rand()%N+1;////随即删除
delecte_list(head,pos);
printf("2.系统随机删除的同学第%d个同学nn删除后按学号反序输出",pos);///
inverse_list(head);//反排序
traverse_list(head);
printf("3.系统已从剩余学生中抽取了一位nn");
printf("插入该生序号为%dnn",insert_list(head));
traverse_list(head);//遍历重新反排序链表输出
}
解决方案
定义放在使用前。这样可以找到
解决方案二:
定义放在使用前。这样可以找到
解决方案三:
声明要在使用前,括号不要少半边
时间: 2024-09-10 07:39:27