// Compare.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" /* 第一题:数组比较: • 问题描述: 比较两个数组,如果2个数组长度不等,则只比较较短长度数组个数元素。 请编程实现上述比较,并返回比较中发现的不相等元素的个数 比如: 数组{1,3,5}和数组{77,21,1,3,5}按题述要求比较,不相等元素个数为0 数组{1,3,5}和数组{77,21,1,3,5,7}按题述要求比较,不相等元素个数为3 • 要求实现函数: void array_compare(int len1, int array1[], int len2, int array2[]) 【输入】 int len1:输入被比较数组1的元素个数; int array1[]:输入被比较数组1; int len2:输入被比较数组2的元素个数; int array2[]:输入被比较数组2; 【输出】 无 【返回】 不相等元素的个数,类型为in */ /* * Function: array_compare * Usage: array_compare(len1, array1, len2, array2) * ----------------------------------------------------- */ void array_compare(int len1, int array1[], int len2, int array2[]) { if(len1<=0||len2<=0) { printf("%d\n",0); return; } int i,j=0; int temp =0; int num = 0; if(len1<=len2) { for (i=0;i<len1;i++) { temp = array1[i]; for (j=0;j<len2;j++) { if (temp == array2[j]) { num ++; break; } } } printf("%d\n",len1-num); //输出不相同的个数 } else { for (i=0;i<len2;i++) { temp = array2[i]; for (j=0;j<len1;j++) { if (temp == array1[j]) { num ++; break; } } } printf("%d\n",len2-num);//输出相同的个数 } } int _tmain(int argc, _TCHAR* argv[]) { int array1[] = {1,3,5}; int len1 = sizeof(array1)/sizeof(int); int array2[] = {77,21,1,1,1,7}; int len2 = sizeof(array2)/sizeof(int); array_compare(len1, array1, len2, array2); getchar(); return 0; }