struct Student *next;
}student;
student * creat() //创建链表 { char temp;
student *p=0,*h=0;
char NewStr=0;
h=(student*)malloc(sizeof(student));
h->next=NULL;
printf("请输入结束标志字符:");
scanf("%c",&temp);
printf("请输入集合元素:");
scanf("%c",&NewStr);
w=temp) { p=(student*)malloc(sizeof(student));
p->str=NewStr;
scanf("%c",&N p->next=h->next;
h->next=p;
} r } int Length(student *q) //主要是用来求L1的长度 int n=0;
q=q->next;
while(q) { n++;
q=q->next;
} return n;
} bool issubset(student *L1,student *是L2的子集,如果是返回1,不是就返回0 { student *p1,*p2;
c int i=0,Len;
Len=Length(L1);
p1=L1->next p2=L2->next;
while(p1!
=NULL) { while(p2!
=NULL) { if(p1->str==p2->s { i++;
b } p } p2 p1=p1->next;
} if(i==Len { return 1;
} else { r } } void mai { student *L1,*L2;
printf("集合L1:");
L1=creat();
fflush(stdin);
printf("集合L2:");
L fflush(stdin);
if(issubset(L1,L2)) { printf("L1是L2的子集!
");
} else { printf("L1不是L2的子集!
");
} } 给你参考一下 如有错误请指出。
None 内容来自网友回答
设是至少含有两个元素的集合.在上定义了一个二元运算"(即对任意的,,对于有序元素...
设是至少含有两个元素的集合.在上定义了一个二元运算"(即对任意的,,对于有序元素对,在中有唯一确定的元素与之对应).若对于任意的,,有,则对任意的,,下列等式中不能成立的是( ) A、 B、 C、 D、