C语言在键盘上输入单链表
时间: 2024-09-20 15:05:46 浏览: 37
C语言实现单链表的操作
在C语言中,创建单链表并从键盘输入节点通常涉及以下几个步骤:
1. 定义结构体:首先,定义一个表示链表节点的结构体,包含数据域和指向下一个节点的指针。
```c
typedef struct Node {
int data;
struct Node* next;
} Node;
```
2. 输入节点:创建一个函数用于从用户那里获取整数并将其添加到链表中。可以使用`scanf`函数读取输入,并创建新节点连接现有链表。
```c
void insertNode(Node** head, int value) {
Node* newNode = (Node*)malloc(sizeof(Node));
newNode->data = value;
newNode->next = NULL;
if (*head == NULL) {
*head = newNode;
} else {
Node* temp = *head;
while (temp->next != NULL) {
temp = temp->next;
}
temp->next = newNode;
}
}
```
3. 主程序循环:在主函数中,你可以设置一个无限循环来持续接收用户的输入直到用户选择退出。通过调用`insertNode`函数将每个输入插入链表。
```c
int main() {
Node* head = NULL;
char continueInput = 'y';
while (continueInput == 'y' || continueInput == 'Y') {
int input;
printf("Enter a number to add it to the list or 'n' to stop: ");
scanf("%d", &input);
insertNode(&head, input);
printf("Do you want to add more numbers? (y/n): ");
scanf(" %c", &continueInput); // 留空格防止误读前一输入的回车符
}
// 其他链表操作,如打印链表等...
return 0;
}
```
阅读全文