问题描述
- 编译通过了,但是却运行出错是为啥....C++新手通宵第一晚求助
-
#include
using namespace std;
struct Node
{
int E;
double C;
Node next;
};
int length(Node a)
{
int i=0;
Node* p=a->next;
while(p)
{
i++;
p=p->next;
}
return i;
}
void kingofjdashen(Node* a,Node* b)
{
int c[100]={100};
double d[100]={0};
double e,f;
int g,h;
for(int i=0;i
Node* k=a->next;
e=k->C;
h=k->E;
for(int j=0;j
{
Node* l=b->next;
f=l->C;
g=l->E;
g=g*h;
if(c[g]==0)
{
c[g]=g;
d[g]=e*f;
}
else d[g]=d[g]+e*f;
l=l->next;
}
k=k->next;
}
int z=0;
for(int i=0;i
if (c[i]!=100)
{
if(z)cout
if(i==0)
{
cout
z=1;
}
else {
cout
z=1;
}
}
}
}
Node* sd(int n)
{
Node* p;
Node* q=p->next;
double a;
int b;
for(int i=0;i
{
cout
cin>>a;
cout<<"请输入第"<
cin>>b;
q->E=b;
q->C=a;
q=q->next;
}
q=NULL;
return p;
}int main()
{
int n;
cout<<"请输入第一个多项式的项数 :"<
cin>>n;
Node* a=sd(n);
cout<<"请输入第二个多项式的项数 :"<
cin>>n;
Node* b=sd(n);
cout<<"这两个多项式的乘积为:"<<endl;
kingofjdashen(a,b);
}
解决方案
Node* p;
Node* q=p->next;
没有对p初始化,分配内存
解决方案二:
分配空间的问题 要初始化
解决方案三:
node *next
不是用指针吗?
解决方案四:
next是指针域,前面应该加*,node*next。
解决方案五:
Node *next
时间: 2024-12-22 21:16:25