| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 442 人关注过本帖
标题:插入 出错了
只看楼主 加入收藏
timstrong
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-5-17
收藏
 问题点数:0 回复次数:4 
插入 出错了

#include <stdio.h>
#define NULL 0

typedef struct pnode
{
int exp,coef;
struct pnode *next;
}pnode;

int createpolyn(pnode *h)
{
pnode *p,*q;
int i,num,a,b;
h=(pnode *)malloc(sizeof(pnode));
if(!h)
return(0);
h->next=NULL;
printf("\nplease input the number of item of the polynomial you want to creat:\n");
scanf("%d",&num);
for(i=1;i<=num;i++)
{
printf("\nplease input the exp & coef of NO.%d item:\n",num-i+1);
p=(pnode *)malloc(sizeof(pnode));
if(p==NULL)
return(0);
scanf("%d,%d",&a,&b);printf("%d\n",p);
p->exp=a;
p->coef=b;
p->next=h->next;
h->next=p;
}
return(1);
}

void outputpolyn(pnode *h)
{
pnode *p;
p=h->next;
while(p!=NULL)
{ printf("%d",p);
printf("(%d,%d) ",p->exp,p->coef);
p=p->next;
}
}

pnode* addpolyn(pnode *ha,pnode *hb)
{
pnode *pa,*pb,*p,*s,*q;
int sum;
pa=ha->next;
pb=hb->next;
p=hb;
while(pa!=NULL&&pb!=NULL)
{
if(pb->exp > pa->exp)
{
p=pb;
pb=pb->next;
}
else if(pb->exp < pa->exp)
{
s=pa;
pa=pa->next;
s->next=pb;
p->next=s;
p=s;
}
else{
sum=pb->coef+pa->coef;
if(sum==NULL)
{
s=pa;
pa=pa->next;
q=pb;
pb=pb->next;
p->next=pb;
free(s);
free(q);
}
else{
s=pa;
pa=pa->next;
pb->coef=sum;
free(s);
}
}
}
if(pa!=NULL)
p->next=pa;
free(ha);
return(hb);
}

main()
{
pnode *ha,*hb,*hc;
createpolyn(ha);
outputpolyn(ha);
createpolyn(hb);
outputpolyn(hb);
hc=addpolyn(ha,hb);
outputpolyn(hc);
}

2007-05-17 10:55
timstrong
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-5-17
收藏
得分:0 

帮我看看 无法显示正确结果

2007-05-17 10:55
herbert_1987
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:1314
专家分:0
注 册:2007-5-13
收藏
得分:0 
自己要学会调试才行,最简单的方法是在关键地方输出一些东西(用于提示执行情况的)

人生重要的不是所站的位置,而是所朝的方向
2007-05-18 15:50
wind995
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-4-28
收藏
得分:0 
你这是做什么的?
具体要达到什么要求啊!

不让人懂,还不让人装懂啊!
2007-05-22 16:41
jackeyhlj
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:51
专家分:0
注 册:2007-3-27
收藏
得分:0 

你掉了一个头文件
#include<malloc.h>
并且你要执行什么功能啊,说清楚,让别人看程序是很浪费时间的
ha和hb要初始化
创建函数里的*p是多余的


2007-05-22 16:55
快速回复:插入 出错了
数据加载中...
 
   



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

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