永发信息网

C语言,在第i个结点前插入值为x的结点,测试数据要求如下:1:链表长度n>=10,x=100,i分

答案:1  悬赏:70  手机版
解决时间 2021-03-22 03:28
C语言,在第i个结点前插入值为x的结点,测试数据要求如下:1:链表长度n>=10,x=100,i分
最佳答案
#include 
#include 

typedef int DataType;

typedef struct node {
DataType data;
struct node *next;
}*LinkList,*pNode;

LinkList GetEmptyList() {
LinkList head = (pNode)malloc(sizeof(struct node));
head->data = 0;
head->next = NULL;
return head;
}

void CreateList(LinkList head, DataType a[],int n) {
int i;
pNode p = head;
for(i = 0; i < n; ++i) {
p->next = (pNode)malloc(sizeof(struct node));
p->next->data = a[i];
p = p->next;
}
p->next = NULL;
}

int LengthList(LinkList head) {
int len = 0;
pNode p = head->next;
while(p) { ++len; p = p->next; }
return len;
}

int InsertNode(LinkList head, DataType x, int pos) {
int i = 1,len = LengthList(head);
pNode tmp,p = head;
if(pos < 1) { printf("位置参数错误:%d。
",pos); return 0; }
if(pos > len) { printf("位置参数超过表长,操作无效。
"); return 0; }
while(p->next && pos > i) { ++i; p = p->next; }
tmp = (pNode)malloc(sizeof(struct node));
tmp->data = x;
tmp->next = p->next;
p->next = tmp;
return 1;
}

void ShowList(LinkList head) {
pNode p = head->next;
while(p) {
printf("%d ",p->data);
p = p->next;
}
printf("
");
}

int main() {
LinkList head = GetEmptyList();
DataType arr[] = {3,6,8,9,2,13,45,62,33,45,68,90,22,31,42};
int n = sizeof(arr)/sizeof(arr[0]);
CreateList(head,arr,n);
printf("原表内容:
");
ShowList(head);
InsertNode(head,100,5);
printf("
在位置5插入100后:
");
ShowList(head);
InsertNode(head,100,1);
printf("
在位置1插入100后:
");
ShowList(head);
return 0;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
按劳分配在所有分配方式中占主体地位,是由于
中学放寒假时间和开学时间
初2下物理人教版的预习笔记,急
长沙南站x115路公交在哪个站台
黄山风景区旅游完如何回黄山市中心
去领结婚证一定要入户口到对方家吗
单人快板搞笑台词,联欢快板词单人100~150字
2011年社会时事热点(政治论文,初二级,500
你好 我准备买门面房 总价113万 首付一半 贷
田氏面馆这个地址在什么地方,我要处理点事
一场大雨把我的新家泡水里了,跪求意见!
八拜之交的意思是什么?八拜之交是指哪八拜?
诗经中纪念去世友人的诗词
枸杞红枣露可不可以和廋肉粉丝一起吃?
10款奇云1是不是碟刹
推荐资讯
栀子花开哪一句是关于友谊的歌词
单选题Thecoffeeisveryhot;don’t________y
大年初一打碎财神爷怎么办?(是个小的放在床头
石亭绿茶在什么地方啊,我要过去处理事情
有什么3D游戏能高空飞行,而且有免费飞行坐骑
物体的质量只与________有关,而与________、
爱情霸气最好的一句话,霸气古风爱情短句子十
九年级下册必背古诗词,人教版语文九年级下册
长沙去哪里学平面设计比较好??
花样滑冰起源于17世纪那个国家
瑞安附近哪里有沙滩
换了新地板,旧地板如何废物利用
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?