资源简介
使用链表实现多项式的加法和乘法,数据结构常见问题的C语言实现
代码片段和文件信息
#include
#include
#include
typedef struct list
{
int xishu;
int power;
struct list *next;
}list;
list* creat()
{
list* head=(list*)malloc(sizeof(list));
if(head==NULL)
{
printf(“malloc head node failed\n“);
exit(-1);
}
head->xishu=0;
head->power=0;
head->next=NULL;
int count;
printf(“please input the count of the list:“);
scanf(“%d“&count);
printf(“please input %d xiangwith the power increase\n“count);
while(count<=0)
{
printf(“the input is invalidplease input the count of the list again:“);
scanf(“%d“&count);
}
while(count>0)
{
list *newnode=(list*)malloc(sizeof(list));
if(newnode==NULL)
{
printf(“malloc newnode failed\n“);
exit(-1);
}
printf(“please input xishu:“);
scanf(“%d“&newnode->xishu);
printf(“please input power:“);
scanf(“%d“&newnode->power);
newnode->next=head->next;
head->next=newnode;
--count;
}
return head;
}
void print(const list* lst)
{
if(lst==NULL)
printf(“the list is not exist\n“);
if(lst->next!=NULL)
{
list *p=lst->next;
while(p!=NULL)
{
if(p->power!=0&&p->xishu!=1&&p->power!=1)
printf(“%dX^%d“p->xishup->power);
else if(p->power!=0&&p->xishu!=1&&p->power==1)
printf(“%dX“p->xishu);
else if(p->power!=0&&p->xishu==1&&p->power!=1)
printf(“X^%d“p->power);
else if(p->power==1&&p->xishu==1)
printf(“X“);
else
printf(“%d“p->xishu);
p=p->next;
if(p!=NULL)
printf(“+“);
}
printf(“\n“);
}
}
void list_free(list *a)
{
if(a==NULL)
return ;
list *pa=a->next;
while(pa!=NULL)
{
list *tmp=pa;
pa=pa->next;
free(tmp);
tmp=NULL;
}
free(a);
a=NULL;
}
list *list_copy(const list *src)
{
if(src==NULL)
{
printf(“the list is not exist\n“);
exit(-1);
}
const list *p=src->next;
list* head=(list*)malloc(sizeof(list));
if(head==NULL)
{
printf(“malloc head node failed\n“);
exit(-1);
}
head->xishu=0;
head->power=0;
head->next=NULL;
list* place=head;
while(p!=NULL)
{
list *newnode=(list*)malloc(sizeof(list));
if(newnode==NULL)
{
printf(“malloc newnode failed\n“);
exit(-1);
}
newnode->xishu=p->xishu;
newnode->power=p->power;
相关资源
- 数据结构遍历二叉树算法C语言版(附
- 数据结构 西安电子科技大学
- 数据结构C++版课后题答案
- 公园导游图代码数据结构
- 数据结构大作业(C语言)实验报告
- 非常简单的C++迷宫程序,是数据结构
- 数据结构—图书馆管理系统C++编写
- C语言数据结构课程设计迷宫问题
- 数据结构--家谱管理系统内含报告
- 严蔚敏《数据结构》的全部代码实现
- 数据结构课程设计\\算术表达式求解
- c++字典列表
- 数据结构的顺序栈的逆置和合并
- 个人账户管理系统修改版C语言版
- 数据结构课程设计学生作业管理系统
- 迷宫求解含源代码
- c语言宿舍管理查询软件源代码数据结
- 数据结构大作业航空客运订票系统
- 数据结构哈希表实现通讯录
- C语言课程设计记事本
- 《数据结构》C语言版 实验报告 基础
- C++数据结构等价类实现
- 火车票管理系统C语言数据结构
- 数据结构-报刊管理系统
- 吉林大学软件学院2011数据结构实验题
- 图的深度优先遍历与广度优先遍历(
- 教学计划编制 数据结构 C语言
- 数据结构教程上机实验指导李春葆
- 数据结构家族谱管理系统C语言源代码
- 数据结构课程设计C语言版运动会分数
评论
共有 条评论