数据结构(线性表子系统:c实现)

这段代码展示了如何使用C语言实现线性表的各种操作,包括建表、输入、输出、查找、插入和删除元素。程序通过用户交互式菜单进行操作,支持在链表中特定位置插入和删除元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include<stdio.h>
#include<stdlib.h>//因为使用malloc动态空间
#define N sizeof(node)

//  结点定义
typedef struct linknode
{
    char data;
    struct linknode * next;
}node,*linklist;

node *head;   // 定义一个全局头指针

//建表并且输入内容,结束标记位‘#
void InputList()
{
	node *r,*s;
	char x;
	int T=1,n=0;
	head=(node*)malloc(N);
	r=head;
	printf("\n\t建立一个线性表");
	printf("\n\t请逐个输入字符,结束标记位‘#’\n");
	while(T)
	{
		printf("\t\t请输入:");
		fflush(stdin);//===============为什么必须加上	scanf("%c",&x);才不会出现    ”两遍的  请输入:  请输入:“
		/*清除标准输入设备(一般是键盘)的缓存。往往适用于截获输入特殊值,例如每次读取一个输入的字符,
		但是如果你输完一个字符后敲了回车,回车是一个特殊的键,会产生2个字符,因此程序会认为你输入了3个字符,
		此时可以用读取一个字符后用这个函数清除键盘缓存,从而清除回车的影响。*/
		scanf("%c",&x);
		if(x!='#')
		{
			s=(node*)malloc(T);
			n++;
			s->data=x;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值