1 #include<stdio.h>
2 #include<stdlib.h>
3
4 struct test
5 {
6 int data;
7 struct test *next;
8 };
9
10 void printLink(struct test *head)
11 {
12 struct test *point = head;
13 while(point !=NULL ){
14 printf("%d ",point->data);
15 point = point->next;
16 }
17 putchar('\n');
18 }
19
20 struct test* insertFromHead(struct test *head,struct test *new)
21 {
22 if(head==NULL){
23 head = new;
24 }else{
25 new->next=head;
26 head=new;
27 }
28 return head;
29
30 }
31
32 struct test* createLink(struct test *head)
33 {
34 struct test *new=NULL;
35
36 while(1){
37 new =(struct test*)malloc(sizeof(struct test*));
38 printf("please input a new \n");
39 scanf("%d",&(new->data));
40 if(new->data==0){
41 free(new);
42 return head;
43 }
44 else{
45 head=insertFromHead(head,new);
46 }
47 }
48 }
49
50 int main()
51 {
52 struct test *head=NULL;
53 head = createLink(head);
54 printf("result:\n");
55 printLink(head);
56
57 struct test t1={100,NULL};
58 head = insertFromHead(head,&t1);
59 printf("result2:\n");
60 printLink(head);
61 return 0;
62 }