链表插入删除c语言程序

链表部分代码(插入,删除等等)

#include <stdio.h>
#include <stdlib.h>//This is heade function of "malloc"
int icount;

struct Student
{
	char name[20];
	int number;
	struct Student* next;
};/建立一个学生节点
struct Student* Creat()
{
	struct Student* phead=NULL;
	struct Student* pend;
	struct Student* pnew;
	pend=pnew=(struct Student*)malloc(sizeof(struct Student));
	scanf("%s",&pnew->name);
	printf("\n");
	scanf("%d",&pnew->number);
	icount=0;
	while(pnew->number!=0)
	{
		icount++;
		//printf("%d",icount);
		if(icount==1)
		{
			pnew->next=phead;
			pend=pnew;
			phead=pnew;
		}
		else 
		{
			pnew->next=NULL;
			pend->next=pnew;
			pend=pnew;		
		}

		pnew=(struct Student*)malloc(sizeof(struct Student));
		scanf("%s",&pnew->name);
		printf("\n");
		scanf("%d",&pnew->number);
	}
	free(pnew);
	return phead;
}
void Print(struct Studet* phead)
{
	struct Student* ptemp;
	int idex=1;
	ptemp=phead;
	while(ptemp!=NULL)
	{
		printf("NUMBER[%d]",idex);
		printf("%s,%d",ptemp->name,ptemp->number);
		printf("\n");
		ptemp=ptemp->next;
		idex++;	
	}
}
struct Student* Insert(struct Student* phead)
{
	struct Student* pnew;
	pnew=(struct Student*)malloc(sizeof(struct Student));
	scanf("%s",&pnew->name);
	printf("\n");
	scanf("%d",&pnew->number);

	pnew->next=phead;
	phead=pnew;
	icount++;
	return phead;
}
void Delete(struct Student* phead,int iIndex)//删除指定链表节点
{
	int i;
	struct Student* ptemp;
	struct Student* ppre;
	ptemp=phead;
	ppre=ptemp;
	printf("delete No_%d member----\n",iIndex);
	for(i=1;i<iIndex;i++)
	{
		ppre=ptemp;
		ptemp=ptemp->next;
	}
 	ppre->next=ptemp->next;
	free(ptemp);
	icount--;
}
void yd_charu(struct Student* phead,int iIndex)
{
	int i;
	struct Student* ptemp;
	struct Student* ppre;
	struct Student* p_new;
	ptemp=phead;
	ppre=ptemp;
	printf("Insert No_%d member----\n",iIndex);
	for(i=1;i<iIndex;i++)
	{
		ppre=ptemp;
		ptemp=ptemp->next;
	}
 	//ppre->next=ptemp;
	p_new=(struct Student*)malloc(sizeof(struct Student));//apply for new node
	scanf("%s",&p_new->name);
	printf("\n");
	scanf("%d",&p_new->number);
	p_new->next=ptemp;
	ppre->next=p_new;
	icount++;
}


int main()
{//使用的时候,想要结束输入number=0即可,如zhangsan    0则退出循环
struct Student* phead;
phead=Creat();//创建新的节点
//phead=Insert(phead);//从头部开始插入
//Delete(phead,2);//删除第二个节点
yd_charu(phead,2);//插入第二个节点
Print(phead);//输出链表
return 0;
}
该压缩文件包含一个针对低压直流配电网络的MATLAB仿真模型,重点研究其在工业环境中的实际应用。MATLAB作为工程计算与系统仿真的核心平台,为直流电网的建模与分析提供了专业工具。随着分布式能源与微电网技术的发展,直流配电系统因其独特优势在工业领域逐步替代传统交流方案,尤其在提升能效与增强供电可靠性方面表现突出。低压直流配电系统的主要特征包括:首先,直流网络能够规避交流系统中的功率因数补偿需求,显著降低谐波干扰,从而提升电能转换的整体效率。该系统更便于整合太阳能、风能等可再生能源,并直接适配各类直流终端设备,如高效照明装置与电动汽车充电设施。其次,MATLAB的电力系统专用模块与Simulink动态仿真环境可用于构建完整的直流电网架构,模拟其电压调节机制、功率传输特性及安全防护功能。模型通常涵盖发电单元、功率变换装置、直流断路设备、母线结构及负载模块等关键部分,各组件均采用特定控制算法,例如脉宽调制技术与平均化建模方法。在控制策略方面,低压直流系统需实现精确的电压与电流管理,常用方法包括恒定电压电流调控及恒功率因数控制等。工业场景中,此类系统能够优化能源分配流程,支持设备的灵活接入,简化电气线路布局,并更好地适应自动化生产线的动态需求。同时,系统需配置完善的故障防护机制,以应对过压、过流及短路等异常工况,这通常涉及快速保护算法与继电器协调设置。通过该模型的仿真分析,可掌握在MATLAB中设计与评估低压直流配电网络的技术方法,深入理解其在工业场景中的优化部署方案。此项研究亦有助于把握电力系统的发展方向,特别是清洁能源与直流技术融合的前沿趋势。资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yyd__

你的打赏和鼓励我会珍惜!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值