回 帖 发 新 帖 刷新版面

主题:[讨论]高手来看下我程序有什么问题

[em1]编译通过 但无法正常运行 [em6] 项数为2 输出项数为22 而且运行时说。exe不能正常运行
跪求高手 来解答啊 下面是程序 输出没考虑系数为0的情况 有待改进
#include <stdio.h>
#include <malloc.h>
typedef struct LNode{
int xishu;
int zhishu;
struct LNode *next;
}LNode,*LinkList;
struct LNode *creat(int n)

{LNode *L,*p1,*p2;
L=(LinkList)malloc(sizeof(LNode));
L->next=NULL;
L->xishu=n;
p1=p2=(LinkList)malloc(sizeof(LNode));
printf("xiang shu :%d\n",n);
int m=0;
scanf("%d,%d",&p1->xishu,&p1->zhishu);
while(m<n-1)
 {m=m+1;
 if(m==1) L->next=p1;
    else     p2->next=p1;
 p2=p1;
 p1=(LinkList)malloc(sizeof(LNode));
 scanf("%d,%d",&p1->xishu,&p1->zhishu);
 }
 p2->next=NULL;
 return (L);


void print(LinkList &L)
{
printf("项数:%d",L->xishu);
 LNode *p;
 p=L;
 
 while(p->next!=NULL)
 {printf("%d %d\n",p->xishu,p->zhishu);
 p=p->next;
 }
 
 
}
struct LNode *chengfa(LinkList &L1,LinkList &L2,int x1 ,int  x2)
{LNode *p,*q,*qq,*L;
L=(LinkList)malloc(sizeof(LNode));

int m,n;
for(n=1;n<x1;n++)
{p=L1->next;
 for(m=1;m<x2;m++)
   {q=L2->next;
   qq=(LinkList)malloc(sizeof(LNode));
   qq->xishu=p->xishu*q->xishu;
   qq->zhishu=p->zhishu*q->zhishu;
   qq->next=L->next;
   L->next=qq;
   q=q->next;
   }

 p=p->next;
}
L->xishu=x1*x2;
return (L);
}
void main()
{struct LNode *creat(int n);
void print(LinkList &L);
struct LNode *chengfa(LinkList &L1,LinkList &L2,int x1,int x2);
int x1,x2;
printf("please input p(x)\n");
LNode *L1;
L1=(LinkList)malloc(sizeof(LNode));
L1=creat(1);
print(L1);

printf("please input q(x)\n");
LNode *L2;
L2=(LinkList)malloc(sizeof(LNode));
L2=creat(1);
print(L2);

LNode *L;
L=(LinkList)malloc(sizeof(LNode));
L=chengfa(L1,L2,2,2);
printf("p(x)*q(x)=");
print(L);


}

回复列表 (共1个回复)

沙发

深圳市华信群英科技有限公司与知名通信软件公司正式签订定向输送人才的合作协议
针对想进入IT软件行业的有志人士提供专业的企业内训
实训课程采用“2+3”分段教学模式,分为2个月理论强化和3个月项目实训两个阶段
实训前就签订就业安置协议,岗前实训后入职
不仅学费优惠而且是企业定向培训定向招聘,百分百保证就业
有意向请登录www.szctt.com,或加QQ:1179397962做详细咨询

我来回复

您尚未登录,请登录后再回复。点此登录或注册