首先创建两个数组,分别为a[ ]和b[ ]先拿a数组里的第一个元素和b数组的所有元素比较是否相同,再拿a数组里的第二个元素与b数组所有元素进行比较,以此类推。运用两次for循环来完成,用i循环生成a数组的各个下标,在循环体中用j循环生成b数组下标,j循环中判断a[ i ]是否等于b[ j ],如果条件成立即相同元素。fl...
include<stdio.h>intmain(){inti=0;intj=0;intarr1[]={1,2,3,4,5};intarr2[]={1,2,7,4,9};for(i=0;i<sizeof(arr1)/sizeof(arr1[0]);i++){for(j=0;j<sizeof(arr2)/sizeof(arr2[0]);j++){if(arr1[i]==arr2[j]){printf("存在相同元素");break;}}break;}return0;} 1....
如果相等则进入第三次循环,k为 j+1 到 len-1,将重复点 j 后面的所有元素都往前移动 1,并将数组长度 len - 1,j 也 -1(判断向前移动的元素们的第一位,也就是移动后在 j 位上的这个元素,是否还相等。因为 循环已经到了 j,如果 j不减1,则会跳过刚刚向前移动的元素,可能导致...
int X[Max]={0,},Y[Max]={0,};int main(){ int i=0,j=0;int a,b;char c=0;printf("输入第一个数组(以空格分开,回车结束)");while((c!='\n'))scanf("%d%c",X+i++,&c);c=0;printf("输入第二个数组(以空格分开,回车结束)");while((c!='\n'))scanf("%d%c",Y...
int search(int *apt,int n,int key){ int *p; for(p=apt;p<apt+n;p++) //寻找特定元素 if(*p==key) return *p; //直接返回数值 return -1; }int b[]={90,80,70,60,50,40,772,294,1065,184}; //10int a[]={90,80,70,60,50,40,30,20,10,9,8,7,6...
for (i = 0;i < n;i++){ for (j = 0; j < m;j++) { for (k = 0; k < x ;k++) { for (l = 0; l < y;l++) { if (a[i][j] == b[k][l]) { //找到了 } } } }} ...
首先,对数组进行排序,这样相同的元素会排在一起。 然后,遍历排序后的数组,比较相邻元素是否相同,如果相同则将其移除。 最后,将移除重复元素后的数组重新赋值给原数组。 以下是一个简单的示例代码: #include <stdio.h> void removeDuplicates(int arr[], int n) { int j = 0; for (int i = 0; i < n...
当多种不同运算组成一个运算表达式,即一个运算式中出现多种运算符时,运算的优先顺序和结合规则显得十分重要。在学习中,对此合理进行分类,找出它们与数学中所学到运算之间的不同点之后,记住这些运算也就不困难了,有些运算符在理解后更会牢记心中,将来用起来得心应手,而有些可暂时放弃不记,等用...
<stdio>int main(){ int *lpa,*lpb; int a[100],b[100],alen,blen,i,j; printf("输入数组a长度:\n"); scanf("%d",&alen); printf("输入%d个有序数据给数组a\n",alen); for(i=0;i<alen;i++) scanf("%d",&a[i]); printf("输入数组b长度:\n"); ...
question 2: input: arr1[10],arr2[10].output: arr_out[20].copy arr1[10] to arr_out[20]then for(i=0,k=10,i<=9,i++)for(j=0,j<=9,j++){ if (arr2[i]==arr_out[j])// find one element in two array {arr_out[j]=NULL;break;} if (j==10) //the ...