部分代码如下:
typedef struct ElemType{
char id[15];//ISBN
char name[50];//书名
char price;//定价
}ElemType;
typedef struct LNode {
ElemType data; //数据域
struct LNode *next; //指针域
} LNode,*LinkList;
LNode *LocateElem(LinkList L, ElemType e) { //算法2.8 按值查找
//在带头结点的单链表L中查找值为e的元素
LNode *p;
p=L->next;
while(p&&p->data!=e){//[Error] no match for 'operator!=' (operand types are 'ElemType' and 'ElemType')
p=p->next;
}
return p;
}
int main() {
LinkList L;
LNode *p,*q,*r;
int i = 0, temp, a, c, choose,n;
double price;
ElemType e;
cout << "3. 查找\n";
choose = -1;
while (choose != 0) {
case 3: //链表的查找
cout << "请输入所要查找价格:";
cin >> price;
r = LocateElem(L, price);
if (r) {
cout << "查找成功\n";
cout << "该价格对应的书名为:" << r->data.name << endl << endl;
} else
cout << "查找失败!没有这个价格对应的书籍\n\n";
break;
}
return 0;
}
报错:
[Error] no match for 'operator!=' (operand types are 'ElemType' and 'ElemType')