C语言中,寻找两个数组中相同的元素的个数,与元素#includeint search(int *ap
答案:2 悬赏:60 手机版
解决时间 2021-02-03 15:27
- 提问者网友:温旧梦泪无声
- 2021-02-02 23:29
C语言中,寻找两个数组中相同的元素的个数,与元素#includeint search(int *ap
最佳答案
- 五星知识达人网友:老鼠爱大米
- 2021-02-02 23:53
#include<stdio.h>int search(int *apt,int n,int key){int *p;for(p=apt;p<apt+n;p++) //寻找特定元素if(*p==key)return p-apt;return -1;}int b[]={90,80,70,60,50,40,772,294,1065,184};int a[]={90,80,70,60,50,40,30,20,10,9,8,7,6,5,42,40,50,1,2,3}; //在这里定义的好处是,可以在任意函数中通用main() //main拼错了{int i;int c[sizeof(b)/sizeof(b[0])];int q=0;int d;printf("The elements of array a is:\n"); //输出a数组中的元素for(i=0;i<sizeof(a)/sizeof(a[0]);i++){printf(" %d",a[i]);}printf("\n");printf("The elements of array b is:"); //输出b数组中的元素for(i=0;i<sizeof(b)/sizeof(b[0]);i++){printf(" %d",b[i]);}printf("\n");for(i=0;i<sizeof(b)/sizeof(b[0]);i++) //对b中数组的每一个数字都和a中的数字对比一次{int key;key=b[i]; //关键字是b数组中第i个数字d=search(a,sizeof(a)/sizeof(a[0]),key); //寻找关键字if(d>-1){c[q]=key; //这里要保存数组元素的值key,而不是数组下标dq=q+1; //这句话应该放在后面,因为数组下标从0开始}}printf("The number is:\n",q);for(i=0;i<q;i++) //这里i的取值应该为i<qprintf(" %d",c[i]);return 0;}
全部回答
- 1楼网友:你可爱的野爹
- 2021-02-03 00:00
这下我知道了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯