王道训练营3月12日
找出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日相关推荐
- 360度看IT行业--3月12日西安工程大学讲座
2009年3月12日,一个绿色的好日子.当天晚上7点30分,在西安工程大学的讲座开始了. 西安工程大学的孩子们很热情,大一大二的居多,虽然是非计算机专业,但提前就满满的坐在会场等待了.而且很关注IT行 ...
- 王者服务器维护公告最新,王者荣耀3月12日更新维护公告 3.12全部更新内容改动汇总...
王者荣耀在3月12日开启了停机更新维护,此次的更新内容主要是围绕着英雄和装备的调整,还新增了失误交流功能,很多玩家还不清楚更新了什么,下面就来为大家分享一下. 亲爱的召唤师: 为了增加版本的稳定性,我 ...
- 2021年4月12日 阿里供应链Java研发实习面试(一面)(含总结)
title: 2021年4月12日 阿里供应链Java研发实习面试(一面) tags: 面经 2021年4月12日 阿里供应链Java研发实习面试(一面) 自我介绍介绍项目你用哪个版本的Java呢?( ...
- 2021年3月12日 北京格灵深瞳Java开发实习面试(一面)
title: 2021年3月12日 北京格灵深瞳Java开发实习面试 tags: 面经 2021年3月12日 北京格灵深瞳Java开发实习面试(一面) 首先上来问你问什么不做算法,转做开发呢?(因为我 ...
- 分享Silverlight/Windows8/WPF/WP7/HTML5一周学习导读(5月6日-5月12日)
分享Silverlight/Windows8/WPF/WP7/HTML5一周学习导读(5月6日-5月12日) 本周Silverlight学习资源更新 Beginning Silverlight 4 i ...
- 2016年3月12日广州开源社区巡讲活动
2016年3月12日广州开源社区巡讲活动 欢迎大家报名参加 本文版权归作者所有,未经作者同意不得转载.
- Python 是怎么火起来的? 转载 2018年01月12日 00:00:00 133 图:Python 之父 Guido 正在设计 Python 语言,结果家里突然潜入一条大蟒蛇,一番激烈斗争,大
Python 是怎么火起来的? 转载 2018年01月12日 00:00:00 133 图:Python 之父 Guido 正在设计 Python 语言,结果家里突然潜入一条大蟒蛇,一番激烈斗争,大蟒 ...
- 机器之心 Synced 08月12日 20:59
机器之心 Synced 08月12日 20:59 机器学习 人工智能 谷歌大脑 分类 :互联网 阅读:333 抢沙发 分享到: 0 分享到微信朋友圈 打开微信.点击 " 发现 &quo ...
- fgo服务器维护补偿什么时候才有,fgo国服4月12日版本版本更新公告 维护18个小时 补偿18个圣晶石...
fgo有关4月12日的相关版本更新维护公告在近日正式公开,这里带来具体的说明还有相关的注意事项总结,方便玩家提前做好这次大型维护的相关准备工作 本次维护后官方将补偿18个圣晶石,差不多能抽6次左右,补 ...
- 医院管理制度【第一辑】2010年11月12日
我最近将陆续整理医院管理制度方面的资源汇总,这里先做一个实验,整理一下今天2010年11月12日的关于医院关老子制度的帖子. 中国医院管理制度全集(上) 中国医院管理制度全集(下) 医嘱书写.执行制度 ...
最新文章
- python读数据-python中如何读入数据
- 【控制】传递函数拉氏变化如何与时间域结合使用举例
- CountDownLatch 源码分析
- Django-内置用户系统
- SQLServer之创建非聚集索引 1
- JAVA面试中问及HIBERNATE与 MYBATIS的对比,在这里做一下总结
- LINUX 循环fork()
- 仅用半小时,从Python爬取到BI可视化,告诉你深圳房价有多贵
- AcWing 1015. 摘花生 (DP)
- 跟我一起学Windows Workflow Foundation(4)-----使用Listen,Delay,和其他envnt-based定制活动...
- QQ音乐文件缓存位置以及修改方法步骤
- wps ppt word 双屏幕同时浏览技巧
- 刷机入门 手把手教程
- hdu5514 Frogs(容斥原理)
- ESXi 6 升级到ESXi 6.5VIB冲突问题
- 无法加载SQLite.Interop.dll:找不到指定模块
- 计算机电子表格制作教案,电子表格Excel教案设计
- 洛谷P1039 侦探推理
- MarkDown快捷键学习
- 数字经济时代文化消费新特征
热门文章
- 麻瓜编程python百度云_麻瓜编程 实用主义学Python
- 没有提取码 php云盘文件,最新百度网盘分享文件链接无需提取码的方法
- 扫盲:什么是steam令牌验证器?哪些行为会触发steam交易限制
- HanLP Demo(学习笔记)
- 对广州链家网二手房数据进行分析
- java litjson_.NET平台开源JSON库LitJSON的使用方法
- GB28181之国标编码规则
- 解决手机QQ发送文件给电脑端,电脑端无法接收的问题
- xmind 拖拽_思维导图,原来Xmind这么强大!
- 计算机专业英语词汇1690个单词