阅读背景:

数据结构--单向链表实现(c语言)_孔雀南飞梦的博客

来源:互联网 

因为用的是vs,所以scanf是scanf_s

#include<stdio.h>
#include "malloc.h"

//typedef struct MyStruct *Next;
struct MyStruct
{
	int number;//保存的数据
	MyStruct* next;//指向下一结构的指针
	
};
//创建链表的函数
MyStruct *CreateLinked() {
	//头指针
	MyStruct* head = NULL;
	//尾指针
	MyStruct* end = NULL;
	//接收用户传入的数据
	int number = 1;
	scanf_s("%d", &number);
	while (number!=00){
		//scanf("%f", &number);//传入数据
		if (head!=NULL)
		{
			MyStruct* p = (MyStruct*)malloc(sizeof(MyStruct));//动态创建一个结构体
			p->next = NULL;//下一个为空
			p->number = number;//添加数据
			end->next = p;//上一个节点指向当前节点
			end = p;//更新最后节点
		}
		else
		{
			//第一次添加数据
			MyStruct* p = (MyStruct*)malloc(sizeof(MyStruct));//动态创建一个结构体
			p->next = NULL;//下一个为空
			p->number = number;//添加数据
			head = p;//头指针指向第一个节点
			end = p;//尾指针指向当前节点
		}
		scanf_s("%d", &number);
	}
	MyStruct* t = head;
	for (;;) {
		printf("%d\n", t->number);
		if (t->next == NULL)
			break;
		t = t->next;
	}
	return head;
}
int main() {
	MyStruct* s= CreateLinked();
	
	
	
	
	return 0;
}#include<stdio.h>
#in



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: