b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

数据结构 用c语言写的 集合的并、交和差运算的程序基本要求:

电脑杂谈  发布时间:2019-06-20 11:17:42  来源:网络整理

以下程序由标准C实现,并经严格测试.程序通过单链表存储集合

#include

#include

typedef struct pointer{

char dat;

struct pointer *link;

} pointer;

void readdata(pointer *head){ //读集合

pointer *p;

char tmp;

printf("input data ('0' for end):");

scanf("%c",&tmp);

while(tmp!='0')

{

if((tmp'z'))

{

printf("输入错误!必须为小写字母!\n");

return;

}

p=(pointer *)malloc(sizeof(struct pointer));

p->dat=tmp;

p->link=head->link;

head->link=p;

scanf("%c",&tmp);

}

}

void disp(pointer *head){ //显示集合数据

pointer *p;

p=head->link;

while(p!=NULL)

{

printf("%c ",p->dat);

p=p->link;

}

printf("\n");

}

void bing(pointer *head1,pointer *head2, pointer *head3){ //计算集合1与集合2的并

pointer *p1,*p2,*p3;

p1=head1->link;

while(p1!=NULL)

{

p3=(pointer *)malloc(sizeof(struct pointer));

p3->dat=p1->dat;

p3->link=head3->link;

head3->link=p3;

p1=p1->link;

}

p2=head2->link;

while(p2!=NULL)

{

p1=head1->link;

if (p1=11) and (p1-p2>,'.。if(p1 == null||p2 == null||p3 == null||p4 == null)。stu*del=null,*p1=null,*p2=null。

p1=p1->link;

if(p1==NULL)

{

p3=(pointer *)malloc(sizeof(struct pointer));

p3->dat=p2->dat;

p3->link=head3->link;

head3->link=p3;

}

p2=p2->link;

}

}

void jiao(pointer *head1,pointer *head2, pointer *head3){ //计算集合1与集合2的交

pointer *p1,*p2,*p3;

p1=head1->link;

while(p1!=NULL)

{

p2=head2->link;

while((p2!=NULL)&&(p2->dat!=p1->dat))

p2=p2->link;

if((p2!=NULL)&&(p2->dat=p1->dat))

{

p3=(pointer *)malloc(sizeof(struct pointer));

p3->dat=p1->dat;

p3->link=head3->link;

head3->link=p3;

}

p1=p1->link;

}

}

void cha(pointer *head1,pointer *head2, pointer *head3){ //计算集合1与集合2的差

pointer *p1,*p2集合的交并差c语言集合的交并差c语言,*p3;

p1=head1->link;

while(p1!=NULL)

{

p2=head2->link;

if (p1=11) and (p1-p2>,'.。if(p1 == null||p2 == null||p3 == null||p4 == null)。stu*del=null,*p1=null,*p2=null。

p2=p2->link;

if(p2==NULL)

{

p3=(pointer *)malloc(sizeof(struct pointer));

p3->dat=p1->dat;

p3->link=head3->link;

head3->link=p3;

}

p1=p1->link;

}

}

main(){

pointer *head1,*head2,*head3;

head1=(pointer *)malloc(sizeof(struct pointer));

head1->link=NULL;

head2=(pointer *)malloc(sizeof(struct pointer));

head2->link=NULL;

head3=(pointer *)malloc(sizeof(struct pointer));

head3->link=NULL;

printf("输入集合1:\n");

readdata(head1);

printf("输入集合2:\n");

readdata(head2);

printf("集合1为:\n");

disp(head1);

printf("集合2为:\n");

disp(head2);

printf("集合1与集合2的并为:\n");

bing(head1,head2,head3);

disp(head3);

head3->link=NULL;

printf("集合1与集合2的交为:\n");

jiao(head1,head2,head3);

disp(head3);

head3->link=NULL;

printf("集合1与集合2的差为:\n");

cha(head1,head2,head3);

disp(head3);

}

测试用例为(0表示集合输入结束):

fdsa0

savc0


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-107263-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 李悦
        李悦

        台湾如果敢宣布独立

      • 马佩佩
        马佩佩

        加油

      • 伊藤舞子
        伊藤舞子

        我知道我知道我昨天就把高清图都存下来了

      每日福利
      热点图片
      拼命载入中...