用1.7玩游戏这要用到虚拟光驱,推荐酒精120或者DAEMON TOOlS)盘符路径就是虚拟光驱的路径,用虚拟光气吧ROM读进去就可以了
改好了:#include <stdio.h>
#include <stdlib.h>
typedef struct dxs
{
int exp,coef
struct dxs *next
}duoxs,*duo_xs
/*****输入函数*****/
void build(int i,duo_xs pa)
{
int j,sum_duoxs,exps=0,coefs=0
duoxs *p
pa->coef=coefs
pa->exp=exps
pa->next=NULL
p=pa
printf("输入第%d个多项式的个数\n",i)
scanf("%d",&sum_duoxs)
for(j=sum_duoxsj>0j--)
{
printf("输入系数和指数")
scanf("%d%d",&coefs,&exps)
p->coef=coefs
p->exp=exps
p->next=pa
pa=p
p=(duoxs*)malloc(sizeof(duoxs))
}
free(p)
}
/*****输出函数*****/
void show(duo_xs pa)
{
while(pa!=NULL)
{
printf("%d\t%d\t",pa->coef,pa->exp)
pa=pa->next
}
printf("\n")
}
/*****排序函数(升序)*****/
void list_duoxs(duo_xs pa)
{
duoxs tt,tt0
duoxs *p=pa,*q=pa
tt.coef=p->coef
tt.exp=p->exp
while(p!=NULL)
{
while(q!=NULL)
{
if(q->exp<tt.exp)
{
tt0.exp=tt.exptt0.coef=tt.coef
tt.exp=q->exptt.coef=q->coef
q->exp=tt0.expq->coef=tt0.coef
}
q=q->next
}
tt0.exp=tt.exptt0.coef=tt.coef
tt.exp=p->exptt.coef=p->coef
p->exp=tt0.expp->coef=tt0.coef
p=p->next
q=p
}
}
/*****多项式相加函数*****/
void add(duo_xs pa,duo_xs pb)
{
int sum_coef
duoxs *p,*q,*u,*pre
pre=pa
u=pb
p=pa->next
q=pb->next
while((p!=NULL)&&(q!=NULL))
{
duoxs *p,*q,*u,*pre
if(p->exp>q->exp)
{
u=q
pre->next=u
u->next=p
pre=u
q=q->next
}
else if(p->exp<q->exp)
{
pre=p
p=p->next
}
else
{
sum_coef=p->coef+q->coef
if(sum_coef==0)
{
u=p
p=p->next
free(u)
u=q
q=q->next
free(u)
}
else
{
p->coef=sum_coef
pre=p
p=p->next
u=q
q=q->next
free(u)
}
}
if(q!=NULL)
{
pre->next=q
}
}
}
/*****main函数*****/
void main()
{
duoxs a,b
build(1,&a)
list_duoxs(&a)
show(&a)
build(2,&b)
list_duoxs(&b)
show(&a)
add(&a,&b)
show(&a)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)