C语言高手请解决2个文本求交集和求并集问题
1,用C语言将152.txt和156.txt求交集2,用C语言将152.txt和156.txt求并集结果用"交集.txt","并集.txt,保存在C盘求交集与补集关系请看...
1,用C语言将152.txt和156.txt求交集
2,用C语言将152.txt和156.txt求并集
结果用"交集.txt","并集.txt,保存在C盘
求交集与补集关系请看下面
比如
01 02 03 04 05 06
01 03 05 06 07 08
与
01 02 03 04 05 06
01 04 05 06 07 08
的交集是
01 02 03 04 05 06
并集
01 02 03 04 05 06
01 03 05 06 07 08
01 04 05 06 07 08
正确结果请看附件"交集"和"并集",http://pan.baidu.com/s/1i3j5ku5
最好解析一下 展开
2,用C语言将152.txt和156.txt求并集
结果用"交集.txt","并集.txt,保存在C盘
求交集与补集关系请看下面
比如
01 02 03 04 05 06
01 03 05 06 07 08
与
01 02 03 04 05 06
01 04 05 06 07 08
的交集是
01 02 03 04 05 06
并集
01 02 03 04 05 06
01 03 05 06 07 08
01 04 05 06 07 08
正确结果请看附件"交集"和"并集",http://pan.baidu.com/s/1i3j5ku5
最好解析一下 展开
展开全部
#include <stdio.h>
#define _AP a,a+1,a+2,a+3,a+4,a+5
#define _BP b,b+1,b+2,b+3,b+4,b+5
#define _AS a[0],a[1],a[2],a[3],a[4],a[5]
#define _BS b[0],b[1],b[2],b[3],b[4],b[5]
int a[6],b[6];
int compare(const int *src1, const int *src2)
{
int ret;
int i;
for (i = ret = 0; i < 6; i++ )
{
if (src1[i] > src2[i])
{
ret = 1;
break;
}
else if (src1[i] < src2[i])
{
ret = -1;
break;
}
}
return ret;
}
void jjbj(FILE *fp1, FILE *fp2, FILE * fpjj, FILE *fpbj )
{
int i, j;
i = compare(a, b);
if (i>0)
{
fprintf(fpbj, "%d,%d,%d,%d,%d,%d\n", _BS);
j = fscanf(fp2, "%d,%d,%d,%d,%d,%d\n", _BP);
if (j<6)
{
while(fscanf(fp1, "%d,%d,%d,%d,%d,%d\n", _AP))
{
fprintf(fpbj, "%d,%d,%d,%d,%d,%d\n", _AS);
}
return;
}
}
else if (i<0)
{
fprintf(fpbj, "%d,%d,%d,%d,%d,%d\n", _AS);
j = fscanf(fp1, "%d,%d,%d,%d,%d,%d\n", _AP);
if (j<6)
{
while(fscanf(fp2, "%d,%d,%d,%d,%d,%d\n", _BP))
{
fprintf(fpbj, "%d,%d,%d,%d,%d,%d\n", _BS);
}
return;
}
}
else
{
fprintf(fpbj, "%d,%d,%d,%d,%d,%d\n", _AS);
fprintf(fpjj, "%d,%d,%d,%d,%d,%d\n", _AS);
j = fscanf(fp1, "%d,%d,%d,%d,%d,%d\n", _AP);
if (j<6)
{
while(fscanf(fp2, "%d,%d,%d,%d,%d,%d\n", _BP))
{
fprintf(fpbj, "%d,%d,%d,%d,%d,%d\n", _BS);
}
return;
}
j = fscanf(fp2, "%d,%d,%d,%d,%d,%d\n", _BP);
if (j<6)
{
while(fscanf(fp1, "%d,%d,%d,%d,%d,%d\n", _AP))
{
fprintf(fpbj, "%d,%d,%d,%d,%d,%d\n", _AS);
}
return;
}
}
jjbj(fp1, fp2, fpjj, fpbj);
}
int main(void)
{
FILE *fp1, *fp2, *fpjj, *fpbj;
fp1 = fopen("152.txt", "r");
if (fp1 == NULL)
{
return -1;
}
fp2 = fopen("156.txt", "r");
if (fp1 == NULL)
{
return -1;
}
fpjj = fopen("jj.txt", "w+");
fpbj = fopen("bj.txt", "w+");
fscanf(fp1, "%d,%d,%d,%d,%d,%d\n", _AP);
fscanf(fp2, "%d,%d,%d,%d,%d,%d\n", _BP);
jjbj(fp1, fp2, fpjj, fpbj);
close(fp1);
close(fp2);
close(fpjj);
close(fpbj);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询