编程建立一个带有头节点的单链表,链表中的数据从键盘输入,当输入数据
答案:1 悬赏:70 手机版
解决时间 2021-12-16 05:15
- 提问者网友:劫难与你
- 2021-12-15 13:48
编程建立一个带有头节点的单链表,链表中的数据从键盘输入,当输入数据为-1时表
最佳答案
- 五星知识达人网友:我叫哇咔咔
- 2021-12-15 15:19
下面是你要的链表:
#include <stdlib.h>
#include <stdio.h>
struct Node {
int value;
Node * next;
};
Node * buildList(int arr[], int n)
{
if(n == 0) return NULL;
Node * head = new Node();
head->value = arr[0];
head->next = NULL;
Node *p = head, *q;
for(int i=1; i<n; i++) {
q = new Node();
q->value = arr[i];
q->next = NULL;
p->next = q;
p = p->next;
}
return head;
}
void printList(Node *head)
{
Node *p = head;
while(p!=NULL) {
printf("%d ", p->value);
p = p->next;
}
printf("\n");
}
int main()
{
int n , a[100];
printf("输入节点的个数:");
scanf("%d", &n);
printf("输入节点的值:");
for(int i=0; i<n; i++)
scanf("%d", &a[i]);
Node * list = buildList(a, n);
printList(list);
//float x;
//scanf("%f", &x);
}
#include <stdlib.h>
#include <stdio.h>
struct Node {
int value;
Node * next;
};
Node * buildList(int arr[], int n)
{
if(n == 0) return NULL;
Node * head = new Node();
head->value = arr[0];
head->next = NULL;
Node *p = head, *q;
for(int i=1; i<n; i++) {
q = new Node();
q->value = arr[i];
q->next = NULL;
p->next = q;
p = p->next;
}
return head;
}
void printList(Node *head)
{
Node *p = head;
while(p!=NULL) {
printf("%d ", p->value);
p = p->next;
}
printf("\n");
}
int main()
{
int n , a[100];
printf("输入节点的个数:");
scanf("%d", &n);
printf("输入节点的值:");
for(int i=0; i<n; i++)
scanf("%d", &a[i]);
Node * list = buildList(a, n);
printList(list);
//float x;
//scanf("%f", &x);
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯