找出n个数组中相同的元素

 1 int arrays_common(int arrs[][10], int cnt,  int* res, int len_res )
 2 {
 3     int* index_arr = (int*)calloc(cnt, sizeof(int));         //cnt是第一维 数组的编号
 4     int common_cnt = 0 ;                                    //result中数组的下标
 5     int max_index ;
 6     int min_val ;
 7     int min_index ;
 8     int index ;
 9     while(1)
10     {
11         for(index = 0 ; index < cnt - 1; index ++)
12         {
13             if( arrs[index][index_arr[index]] != arrs[index + 1][index_arr[index + 1]] )
14             {
15                 break ;
16             }
17         }
18         if(index < cnt - 1)
19         {
20             min_index = 0 ;
21             min_val = arrs[0][index_arr[0]] ;
22             for(index = 1; index < cnt; index ++)
23             {
24                 if(arrs[index][index_arr[index]] < min_val)
25                 {
26                     min_index = index ;
27                     min_val = arrs[index][index_arr[index]] ;
28                 }
29             }
30             index_arr[min_index] ++ ;
31         }else
32         {
33             res[common_cnt] = arrs[0][index_arr[0]] ;
34             common_cnt ++ ;
35             for(index = 0 ; index < cnt; index ++)
36             {
37                 index_arr[index] ++ ;
38             }
39         }
40         for(max_index = 0, index = 1; index < cnt; index ++)
41         {
42             if(index_arr[index] > index_arr[max_index])
43             {
44                 max_index = index ;
45             }
46         }
47         if(index_arr[max_index] >= 10)
48         {
49             return common_cnt;
50         }
51     }
52 }

函数指针

函数名实际上代表函数的地址。函数指针是指向函数的指针变量。 因而“函数指针”本身首先应是指针变量,只不过该指针变量指向函数。这正如用指针变量可指向整型变量、字符型、数组一样,这里是指向函数。如前所述,C在编译时,每一个函数都有一个入口地址,该入口地址就是函数指针所指向的地址。有了指向函数的指针变量后,可用该指针变量调用函数,就如同用指针变量可引用其他类型变量一样,在这些概念上是大体一致的。函数指针有两个用途:调用函数和做函数的参数。

 1 #include <stdio.h>
 2 #include <string.h>
 3 #include <stdlib.h>
 4
 5 int mycmp(int left,int right);
 6 int mycat(int left,int right);
 7 int mycpy(int left,int right);
 8 void func_1();
 9 void func_2();
10 void func_3();
11
12 int process(int a,int b,int (*pf)(int a,int b));
13
14 int main(int argc,char* argv)
15 {
16     /*
17     int a = 3;
18     int b = 4;
19     int res;
20     res = process(a,b,&mycmp);
21     printf("res: %d\n",res);
22     res = process(a,b,&mycat);
23     printf("res: %d\n",res);
24     res = process(a,b,&mycpy);
25     printf("res: %d\n",res);
26     */
27     int ch;
28     void (*p[4])() = {NULL,&func_1,&func_2,&func_3};
29     while(ch = getchar())
30     {
31         if(ch=='\n')
32             continue;
33         //system("cls");
34         (*p[ch - '0'])();
35     }
36     return 0;
37 }
38
39 int mycmp(int left,int right)
40 {
41     return left+right;
42 }
43 int mycat(int left,int right)
44 {
45     return left-right;
46 }
47 int mycpy(int left,int right)
48 {
49     return left*right;
50 }
51
52 int process(int a,int b,int (*pf)(int a,int b))
53 {
54     return (*pf)(a,b);
55 }
56
57 void func_1()
58 {
59     putchar('h');
60     putchar('\n');
61 }
62 void func_2()
63 {
64     putchar('y');
65     putchar('\n');
66 }
67 void func_3()
68 {
69     exit(1);
70 }

转载于:https://www.cnblogs.com/qianyanglinux/p/4332176.html

王道训练营3月12日相关推荐

  1. 360度看IT行业--3月12日西安工程大学讲座

    2009年3月12日,一个绿色的好日子.当天晚上7点30分,在西安工程大学的讲座开始了. 西安工程大学的孩子们很热情,大一大二的居多,虽然是非计算机专业,但提前就满满的坐在会场等待了.而且很关注IT行 ...

  2. 王者服务器维护公告最新,王者荣耀3月12日更新维护公告 3.12全部更新内容改动汇总...

    王者荣耀在3月12日开启了停机更新维护,此次的更新内容主要是围绕着英雄和装备的调整,还新增了失误交流功能,很多玩家还不清楚更新了什么,下面就来为大家分享一下. 亲爱的召唤师: 为了增加版本的稳定性,我 ...

  3. 2021年4月12日 阿里供应链Java研发实习面试(一面)(含总结)

    title: 2021年4月12日 阿里供应链Java研发实习面试(一面) tags: 面经 2021年4月12日 阿里供应链Java研发实习面试(一面) 自我介绍介绍项目你用哪个版本的Java呢?( ...

  4. 2021年3月12日 北京格灵深瞳Java开发实习面试(一面)

    title: 2021年3月12日 北京格灵深瞳Java开发实习面试 tags: 面经 2021年3月12日 北京格灵深瞳Java开发实习面试(一面) 首先上来问你问什么不做算法,转做开发呢?(因为我 ...

  5. 分享Silverlight/Windows8/WPF/WP7/HTML5一周学习导读(5月6日-5月12日)

    分享Silverlight/Windows8/WPF/WP7/HTML5一周学习导读(5月6日-5月12日) 本周Silverlight学习资源更新 Beginning Silverlight 4 i ...

  6. 2016年3月12日广州开源社区巡讲活动

    2016年3月12日广州开源社区巡讲活动 欢迎大家报名参加 本文版权归作者所有,未经作者同意不得转载.

  7. Python 是怎么火起来的? 转载 2018年01月12日 00:00:00 133 图:Python 之父 Guido 正在设计 Python 语言,结果家里突然潜入一条大蟒蛇,一番激烈斗争,大

    Python 是怎么火起来的? 转载 2018年01月12日 00:00:00 133 图:Python 之父 Guido 正在设计 Python 语言,结果家里突然潜入一条大蟒蛇,一番激烈斗争,大蟒 ...

  8. 机器之心 Synced 08月12日 20:59

     机器之心 Synced 08月12日 20:59 机器学习 人工智能 谷歌大脑 分类 :互联网 阅读:333 抢沙发 分享到: 0 分享到微信朋友圈 打开微信.点击 " 发现 &quo ...

  9. fgo服务器维护补偿什么时候才有,fgo国服4月12日版本版本更新公告 维护18个小时 补偿18个圣晶石...

    fgo有关4月12日的相关版本更新维护公告在近日正式公开,这里带来具体的说明还有相关的注意事项总结,方便玩家提前做好这次大型维护的相关准备工作 本次维护后官方将补偿18个圣晶石,差不多能抽6次左右,补 ...

  10. 医院管理制度【第一辑】2010年11月12日

    我最近将陆续整理医院管理制度方面的资源汇总,这里先做一个实验,整理一下今天2010年11月12日的关于医院关老子制度的帖子. 中国医院管理制度全集(上) 中国医院管理制度全集(下) 医嘱书写.执行制度 ...

最新文章

  1. python读数据-python中如何读入数据
  2. 【控制】传递函数拉氏变化如何与时间域结合使用举例
  3. CountDownLatch 源码分析
  4. Django-内置用户系统
  5. SQLServer之创建非聚集索引 1
  6. JAVA面试中问及HIBERNATE与 MYBATIS的对比,在这里做一下总结
  7. LINUX 循环fork()
  8. 仅用半小时,从Python爬取到BI可视化,告诉你深圳房价有多贵
  9. AcWing 1015. 摘花生 (DP)
  10. 跟我一起学Windows Workflow Foundation(4)-----使用Listen,Delay,和其他envnt-based定制活动...
  11. QQ音乐文件缓存位置以及修改方法步骤
  12. wps ppt word 双屏幕同时浏览技巧
  13. 刷机入门 手把手教程
  14. hdu5514 Frogs(容斥原理)
  15. ESXi 6 升级到ESXi 6.5VIB冲突问题
  16. 无法加载SQLite.Interop.dll:找不到指定模块
  17. 计算机电子表格制作教案,电子表格Excel教案设计
  18. 洛谷P1039 侦探推理
  19. MarkDown快捷键学习
  20. 数字经济时代文化消费新特征

热门文章

  1. 麻瓜编程python百度云_麻瓜编程 实用主义学Python
  2. 没有提取码 php云盘文件,最新百度网盘分享文件链接无需提取码的方法
  3. 扫盲:什么是steam令牌验证器?哪些行为会触发steam交易限制
  4. HanLP Demo(学习笔记)
  5. 对广州链家网二手房数据进行分析
  6. java litjson_.NET平台开源JSON库LitJSON的使用方法
  7. GB28181之国标编码规则
  8. 解决手机QQ发送文件给电脑端,电脑端无法接收的问题
  9. xmind 拖拽_思维导图,原来Xmind这么强大!
  10. 计算机专业英语词汇1690个单词