这是一个简单的程序,可以使用C在Linklist的末尾添加元素。
void main() {
int i, n, x;
struct Node* Head = NULL;
struct Node* temp1;
printf("Enter the no. of elements:");
scanf("%d",&n);
printf("\nEnter the elements:");
for (i = 0; i < n; i++) {
temp1 = Head;
struct Node* temp = (Node*)malloc(sizeof(struct Node));
scanf("%d", &x);
temp->data = x;
temp->next = NULL;
if (Head != NULL) {
while (temp1 != NULL) // This part is not working properly
temp1 = temp1->next;
temp1->next=temp;
} else {
Head = temp;
}
}
temp1 = Head;
while (temp != NULL) {
printf("temp=%d tempdata=%d \n",temp,temp->data);
temp = temp->next;
}
}
while部分未将新元素与以前的元素链接。
最佳答案
改变中
while(temp1!=NULL)
temp1=temp1->next;
至
while(temp1!=NULL && temp1->next != null)
temp1=temp1->next;
应该解决这个问题;)