node

`c

include <stdio.h>

include <stdlib.h>

typedef struct node {

int data;
struct node *pNext;

}Node;

Node *head = NULL;

void createNodeList() {

head = (Node*) malloc(sizeof(Node));
if (NULL == head) {
    return;
} else {
    head->data = 0;
    head->pNext = NULL;
    return;
}

}

void addNode(Node* node) {

if (head == NULL) {
    return;
}

Node* p = head->pNext;
Node* q = head;
while (p != NULL) {
    q = p;
    p = p->pNext;
}

q->pNext = node;
node->pNext = NULL;

// return true;
}

void deleteNode(int index) {
if (head == NULL) {
return;
}
Node* p = head->pNext;
int length = 0;
while (NULL != p) {
length ++;
p = p->pNext;
}
if (length < index) {

    return;
} else {

    Node* q = head;
    p = head;
    for (int i = 0; i <index ; i++) {

        q = p;
        p = p->pNext;
    }
    Node* t = p->pNext;
    q->pNext = t;
    free(p);
    return;
}

}

void printNode() {

Node* pHead = head;

if(head == NULL) {
    return;
}

if(pHead->pNext == NULL) {
    return;
}

Node* pi = pHead->pNext;

// Node* pj = pi->pNext;

for (;pi != NULL;pi = pi->pNext) {

    printf("node:%dn",pi->data);
}

}

int main(int argc, const char * argv[]) {
// insert code here…

createNodeList();
Node* node1 = (Node*)malloc(sizeof(Node));
node1->data = 1;
node1->pNext = NULL;

Node* node2 = (Node*)malloc(sizeof(Node));
node2->data = 2;
node2->pNext = NULL;

Node* node = (Node*)malloc(sizeof(Node));
node->data = 3;
node->pNext = NULL;

Node* node4 = (Node*)malloc(sizeof(Node));
node4->data = 6;
node4->pNext = NULL;

addNode(node);
addNode(node1);
addNode(node2);
addNode(node4);

printNode();
return 0;

}