永发信息网

如何用C语言编写求交集和并集的程序?

答案:4  悬赏:0  手机版
解决时间 2021-03-04 20:23
  • 提问者网友:咪咪
  • 2021-03-04 09:48
如何用C语言编写求交集和并集的程序?
最佳答案
  • 五星知识达人网友:woshuo
  • 2021-03-04 09:58
char c[20];//存储交集的字符int count=0;//统计交集个数for (n=1;n for (m=1;m<=k;m++)
{
if(a[n]==b[m]) { c[count]=a[n]; count++; }
}
} c[count]='\0';printf("交集为%s",c);
全部回答
  • 1楼网友:举杯邀酒敬孤独
  • 2021-03-04 14:02
#include
#include
int main(int argc, char* argv[])
{
char a[20],b[20];
int n,m,j,k;
printf ("请输入第一个集合内容\n");
scanf ("%s",a);
j=strlen(a);
printf ("请输入第二个集合内容\n");
scanf ("%s",b);
k=strlen(b);

printf ("集合的交集是:"); ///////////////////////计算2个数组的交集//////////////////// //flag标志位,index数组下标标志位 int flag=1, index=0; //c[20]保存交集的数组,d[40]保存并集的数组
char c[20]="",d[40]="";
for (n=0;n {
for (m=0;m<=k;m++)
{
if(a[n] == b[m])
{
c[index++] = a[n];
break;
}
}
}
printf("\n%s\n",c); ////////////////////////////计算2个数组的并集/////////////////////// flag=1;
index=0;
for (n=0;n {
for(m=0;m {
if(d[m] == a[n])
flag=0;
}
if(flag)
{
d[index++]=a[n];
}
flag=1;
}
flag=1;
for (n=0;n {
for(m=0;m {
if(d[m] == b[n])
flag=0;
}
if(flag)
{
d[index++]=b[n];
}
flag=1;
} printf ("集合的并集是:");
printf("\n%s\n",d);
return 0;
}
  • 2楼网友:低血压的长颈鹿
  • 2021-03-04 12:43
楼上答案有问题。for (n=1;n for (m=1;m<=k;m++)a[0] b[0]没加入比较
  • 3楼网友:长青诗
  • 2021-03-04 11:26
if(a[n]==b[m]]) printf("%c ",,a[n]);在补充的地方添上这就实现了求交集 还要求并集的吗
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯