| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 758 人关注过本帖
标题:[讨论]多项式相加的问题
取消只看楼主 加入收藏
等待
Rank: 1
等 级:新手上路
帖 子:173
专家分:0
注 册:2005-12-1
结帖率:100%
收藏
 问题点数:0 回复次数:1 
[讨论]多项式相加的问题

程序如:
/*此为多项式相加的程序*/

#include<stdio.h>
#include<dos.h>
typedef struct node
{float xs;
int zs;
struct node *next;
}node; /*类型定义*/
int N=sizeof(node);
node * creat() /*定义多项式生成函数*/
{node *p,*h,*ph;
p=(node *)malloc(N); /*开辟头节点*/
sleep(5);
scanf("%f,%d",&p->xs,&p->zs);
ph=h=p;
while(ph->xs!=0)
{p=(node *)malloc(N);
scanf("%f,%d",&p->xs,&p->zs);
ph->next=p;
ph=ph->next;
}
ph->next=NULL;
return h;
}
node *dxsadd(node *s1,node *s2) /*定义多项式相加函数*/
{ node *p=(node *)malloc(N),*p1=p;
while(s1->xs&&s2->xs)
if ( s1->zs>s2->zs)
{ p1->next=s1;
s1=s1->next;
}
else if ( s1->next<s2->next)
{ p1->next=s2;
s2=s2->next;
}
else if ((s1->xs+s2->xs)==0)
{ s1=s1->next;
s2=s2->next;
}
else {s1->xs=s1->xs+s2->xs;
p1->next=s1;
s1=s1->next;
s2=s2->next;
}
if ( s1->xs)
{ p1->next=s1;
}
if ( s2->next)
{ p1->next=s2;
}
return p;
}

void print(node *p) /*定义输出函数*/
{while ( p->xs)
{ printf("%.2f %d ",p->xs,p->zs);
}
printf("\n\n");
}

main()
{node *s1,*s2,*p;
printf("please input s1:\n");
s1=creat();
printf("please input s2:\n");
s2=creat();
p=dxsadd(s1,s2);
printf("the added : ");
print(p->next);
}


为什么运行时出现 :please input s1:
scanf:floating point formats not linked
Abnormal program termination
?

[此贴子已经被作者于2006-3-28 21:13:27编辑过]

搜索更多相关主题的帖子: 多项式 相加 
2006-03-28 21:09
等待
Rank: 1
等 级:新手上路
帖 子:173
专家分:0
注 册:2005-12-1
收藏
得分:0 
请问为什么会出现浮点库连接问题?

2006-03-29 21:36
快速回复:[讨论]多项式相加的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024810 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved