设计一个一元多项式简单的计算器(C语言)
来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/06/24 16:11:04
设计一个一元多项式简单的计算器(C语言)
要求:(1)用带头节点的单链表表示多项式,表中每一个节点表示多项式的一项
(2)一元多项式简单计算器的基本功能为:输入并建立多项式,输出多项式,2个多项式相减
要求:(1)用带头节点的单链表表示多项式,表中每一个节点表示多项式的一项
(2)一元多项式简单计算器的基本功能为:输入并建立多项式,输出多项式,2个多项式相减
![设计一个一元多项式简单的计算器(C语言)](/uploads/image/z/3729225-57-5.jpg?t=%E8%AE%BE%E8%AE%A1%E4%B8%80%E4%B8%AA%E4%B8%80%E5%85%83%E5%A4%9A%E9%A1%B9%E5%BC%8F%E7%AE%80%E5%8D%95%E7%9A%84%E8%AE%A1%E7%AE%97%E5%99%A8%28C%E8%AF%AD%E8%A8%80%29)
#include
#include
typedef struct Node
{
int data;
struct Node *next;
}Node;//链表结点
typedef struct LinkList//定义链表数据类型
{
Node *head;//表头结点
void PrintMform()//输出多项式
{
Node *p=head->next;
int exp = head->data-1;
while(p!=NULL)
{
if(exp==head->data-1)
printf("%dX^%d",p->data,exp);
else
{
if(p->data>0)
printf("+%dX^%d",p->data,exp);
if(p->data==0)
printf("+0");
if(p->data
data,exp);
}
exp--;
p=p->next;
}
printf("\n");
}
void CreateByInput(int length)//通过输入元素建立链表
{
head=(Node *)malloc(sizeof(Node));
head->data=0;//表头节点存储链表真实长度
head->next=NULL;
int i,temp;
Node *p,*cur = head;
for(i=1;idata=temp;
p->next=cur->next;
cur->next=p;
cur = cur->next;
head->data++;
}
}
}LinkList;
void main()
{
LinkList L1,L2;
int length;//就是多项式的项数
printf("Please input the first LinkList's length:\n");
scanf("%d",&length);
printf("begin to struct the first LinkList\n");//开始构造第一个多项式
L1.CreateByInput(length);
printf("begin to struct the second LinkList\n");//开始构造第二个多项式
L2.CreateByInput(length);
printf("the first duoxiangshi is:\n");
L1.PrintMform();//输出第一个多项式
printf("the second duoxiangshi is:\n");
L2.PrintMform();//输出第二个多项式
Node *p = L1.head->next;/////////////////从这里开始
Node *q = L2.head->next;//是计算多项式L1-L2,结果存入L1
while(p!=NULL)
{
p->data-=q->data;
p=p->next;
q=q->next;
}/////////////////////////////////////到这里结束
printf("the substract is:\n");
L1.PrintMform();
system("pause");
}
#include
typedef struct Node
{
int data;
struct Node *next;
}Node;//链表结点
typedef struct LinkList//定义链表数据类型
{
Node *head;//表头结点
void PrintMform()//输出多项式
{
Node *p=head->next;
int exp = head->data-1;
while(p!=NULL)
{
if(exp==head->data-1)
printf("%dX^%d",p->data,exp);
else
{
if(p->data>0)
printf("+%dX^%d",p->data,exp);
if(p->data==0)
printf("+0");
if(p->data
data,exp);
}
exp--;
p=p->next;
}
printf("\n");
}
void CreateByInput(int length)//通过输入元素建立链表
{
head=(Node *)malloc(sizeof(Node));
head->data=0;//表头节点存储链表真实长度
head->next=NULL;
int i,temp;
Node *p,*cur = head;
for(i=1;idata=temp;
p->next=cur->next;
cur->next=p;
cur = cur->next;
head->data++;
}
}
}LinkList;
void main()
{
LinkList L1,L2;
int length;//就是多项式的项数
printf("Please input the first LinkList's length:\n");
scanf("%d",&length);
printf("begin to struct the first LinkList\n");//开始构造第一个多项式
L1.CreateByInput(length);
printf("begin to struct the second LinkList\n");//开始构造第二个多项式
L2.CreateByInput(length);
printf("the first duoxiangshi is:\n");
L1.PrintMform();//输出第一个多项式
printf("the second duoxiangshi is:\n");
L2.PrintMform();//输出第二个多项式
Node *p = L1.head->next;/////////////////从这里开始
Node *q = L2.head->next;//是计算多项式L1-L2,结果存入L1
while(p!=NULL)
{
p->data-=q->data;
p=p->next;
q=q->next;
}/////////////////////////////////////到这里结束
printf("the substract is:\n");
L1.PrintMform();
system("pause");
}
设计一个一元多项式简单的计算器(C语言)
如何用C语言实现一元多项式简单计算器的设计
高分悬赏,设计一个一元多项式简单的计算器(fortran语言)
设计一个一元稀疏多项式简单计算器.
一元稀疏多项式计算器设计任务:设计一个一元稀疏多项式简单计算器.设计要求:一元稀疏多项式简单计算器的基本功能是:(1)输
设计一个一元多项式简单的计算器(数据结构C语言版)急
C语言中 设计一个简单的计算器程序
用C语言设计一个简单的计算器,
一元多项式运算一.问题描述设计一个简单的一元稀疏多项式加法运算器.二.基本要求一元稀疏多项式简单计算器的基本功能包括:1
用C语言设计并实现一个简单计算器
一元稀疏多项式简单的计算器
一元多项式的简单计算设计一个一元的简单计算器基本要求:1、输入并建立多项式2、输出多项式3、两个多箱式相加,建立并输出和