c语言数据结构头插法创建单链表咋改啊? [Error] expected unqualified-id before 'public'不会写输出

#include <iostream>
#include <cstdio>
#include <stdlib.h>
using namespace std;
typedef int ElemType;
typedef struct Node
{
ElemType data;
struct Node *next;
}Node,*LinkedList;
//把struct Node *定义为新类型LinkList,是一个结构体的指针。
void InitLinkedList()
{
Node *L;
L=(Node *)malloc(sizeof(Node));
if(L==NULL)
printf("申请空间失败");
L->next = NULL;
}
LinkedList CreateLinkedListHead(int n)//头插法
{
int i;
int t;
Node *L;
L=(Node *)malloc(sizeof(Node));
L->next = NULL;
printf("输入元素:");
for(i=0;i<n;i++)
{
Node *p;
p=(Node *)malloc(sizeof(Node));
scanf("%d",&t);
p->data = t; //保存节点的数据
p->next = L->next; // L代表最后一个节点,L的next是指向头的,p将作为最后一个节点
L->next = p; //p作为L的下一个节点
}
return L;
}
public int Print(LNode *head)
{
LNode *j; //新建一个指针,让它指向head,从而进行输出操作
j=head;
while(j->next!=NULL)
{
printf("%d ",j->t);
j=j->next;
}
int main()
{
int n;
LinkedList H;
printf("输入单链表的长度(头插法):");
scanf("%d",&n);
H=CreateLinkedListHead(n);
print(H);
printf("\n");
printf("单链表为:");
print(H);
return 0;
}

这段代码什么鬼,难道你用的不是C++?
public int Print(LNode *head)
{
LNode *j; //新建一个指针,让它指向head,从而进行输出操作
j=head;
while(j->next!=NULL)
{
printf("%d ",j->t);
j=j->next;
}
int main()
{
int n;
LinkedList H;
printf("输入单链表的长度(头插法):");
scanf("%d",&n);
H=CreateLinkedListHead(n);
print(H);
printf("\n");
printf("单链表为:");
print(H);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
相似回答