用C语言创建一个链表存储,在每个节点中存储一个整形数据,通过键盘去接收数据,当接收完5个数据后,将所有数据输出,并将数据写入文件
时间: 2023-06-06 20:06:29 浏览: 127
好的,我可以回答您的问题。以下是用C语言创建一个链表存储,接收数据并将其写入文件的代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct Node {
int data;
struct Node* next;
} Node;
int main() {
Node* head = NULL;
Node* current = NULL;
int count = 0;
// 接收输入数据
while(count < 5) {
int num;
printf("请输入数据:");
scanf("%d", &num);
Node* node = (Node*)malloc(sizeof(Node));
node->data = num;
node->next = NULL;
if (head == NULL) {
head = node;
current = node;
}
else {
current->next = node;
current = node;
}
count++;
}
// 输出数据
printf("所有数据为:");
Node* temp = head;
while(temp != NULL) {
printf("%d ", temp->data);
temp = temp->next;
}
// 将数据写入文件
FILE* fp = fopen("data.txt", "w");
temp = head;
while(temp != NULL) {
fprintf(fp, "%d\n", temp->data);
temp = temp->next;
}
fclose(fp);
// 释放内存
temp = head;
while(temp != NULL) {
Node* next = temp->next;
free(temp);
temp = next;
}
return 0;
}
```
这份代码将用户输入的数据存储在链表中,并输出了所有数据。然后,它将数据写入名为"data.txt"的文件中,并释放了使用的内存。
阅读全文