如何实现对函数的隐藏,看完就会

当你写了一个函数可以实现某些功能时,你要给其他人使用,却不想让别人看到你写的函数的内容,这时你就可以通过对函数内容进行隐藏来达到目的,函数提供了对过程的封装和细节的隐藏,那么今天我们就来看看如何对函数进行隐藏: 这里以上篇博客写的Swap函数为例,这里先给出全部代码: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> void Swap(int *px, int *py) { int tmp = *
分类: 其他 发布时间: 11-10 23:26 阅读次数: 0

用函数实现初始化数组、 清空数组、数组元素的逆置

#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> void Empty(int arr[],int sz) { int i = 0; for (i = 0; i < sz; i++) { arr[i] = 0; } } void reverse(int arr[],int sz) { int left = 0; int right = sz - 1; int tmp = 0;
分类: 其他 发布时间: 11-10 23:26 阅读次数: 0

求第n个斐波那契数(分别用递归和非递归两种方法求解)

斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55……这个数列从第3项开始,每一项都等于前两项之和。 这里分别用递归和非递归的方法实现: 递归 #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> int fib(int n) { if (n <= 2) { return 1; } else { return fib(n - 2) + fi
分类: 其他 发布时间: 11-10 23:26 阅读次数: 0

三种方法实现strlen函数

我们知道,strlen函数是计算字符串长度的函数,那么要实现strlen函数主要就是得到字符串长度,那么 怎样才能得到字符串长度呢?如果是整形的数组,我们可以通过下标来寻找,可是这是字符串,我们就要了解字符串了。 这里定义一个字符串 char *str = "abcdef";这里我们可以看到字符串里有'a','b','c','d','e','f',其实字符串后还有一个'\0',用来表示字符串的结束,当字符串中出现'\0'时,标志这个字符串结束。我们可以由此入手,将字符逐个与'\0'比较,若相等
分类: 其他 发布时间: 11-10 23:25 阅读次数: 0

三子棋(井字棋),说没玩过的都没童年

这里我创建了一个“三子棋”的项目,里面有一个头文件game.h和两个源文件text.c 、game.c。 "text.c":text.c源文件放的是main函数,菜单打印menu函数和一个游戏game函数; #include "game.h" void menu() { printf("**************************\n"); printf("*** 1.game ***\n"); printf("*** 0.exit
分类: 其他 发布时间: 11-10 23:25 阅读次数: 0

回味童年,经典扫雷再升级

这里完成一个c语言的扫雷游戏: 游戏要求: 雷盘可以展开 游戏结束显示所用时间 第一次无论走哪都不会被炸死 这个创建一个扫雷项目,包含一个game.h头文件和两个分别为text.c和game.c的源文件。 text.c源文件:包含主函数main()、菜单函数menu()、游戏函数game(); #include"game.h" void menu() { printf("********************\n"); printf("***** 1.play *****\n")
分类: 其他 发布时间: 11-10 23:25 阅读次数: 0

c语言操作符汇总

分类: 算数操作符 移位操作符 位操作符 赋值操作符 单目操作符 关系操作符 逻辑操作符 条件操作符 逗号表达式 下标引用、函数调用和结构成员 算术操作符 + - * / % 1. 除了 % 操作符之外,其他的几个操作符可以作用于整数和浮点数。 2. 对于 / 操作符如果两个操作数都为整数,执行整数除法。而只要有浮点数执行的就是浮点数除法。 3. % 操作符的两个操作数必须为整数。返回的是整除之后的余数。 移位操作符 << 左移操作符 >> 右移操作符 左移分为逻辑左移和算数左移,这两个左移规
分类: 其他 发布时间: 11-10 23:25 阅读次数: 0

汉诺塔问题(看完就记住)

汉诺塔问题:有三个柱子,初始柱a,辅助柱b和目标柱c;在初始柱上有着n个圆盘(圆盘放置规则,大的在下小的在上),对圆盘从上到下依次编号从1到n。将圆盘从初始柱a移到目标柱c上的问题就是汉诺塔问题。 解题思路: (1)以C盘为中介,从a柱将1至n-1号盘移至b柱; (2)将a柱中剩下的第n号盘移至c柱; (3)以a柱为中介;从b柱将1至n-1号盘移至c柱。 下面是通过递归实现汉诺塔问题的c代码: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.
分类: 其他 发布时间: 11-10 23:24 阅读次数: 0

模拟实现strcpy函数功能(优化改进)

strcpy函数,字符串拷贝函数,传入两个参数,将第二个参数的值拷贝到第一个中去。 首先,给出一个普通的代码: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> void my_strcpy(char *str1, char *str2) { while (*str2) { *str1 = *str2; str1++; str2++; } *str1 = *str2; } i
分类: 其他 发布时间: 11-10 23:24 阅读次数: 0

c语言按位异或^的应用实例

1.若a ^ b = c; 则有a ^ c = b, b ^ c = a; 例:将两个整形变量交换(不创建临时变量) 这里就可以用到上面得到的规律来写,在写代码之前先给上面的规律附上具体值来验证一下: 10的二进制 01010 20的二进制 10100 01010 11110 11110 ^ 10100 ^ 10100 ^ 01010 11110 01010 10100 #include<stdio.h> int main() { int a = 10; int b = 20;
分类: 其他 发布时间: 11-10 23:24 阅读次数: 0

杨氏矩阵查找数字(递归和非递归)

杨氏矩阵 有一个二维数组. 数组的每行从左到右是递增的,每列从上到下是递增的. 在这样的数组中查找一个数字是否存在。 要求:时间复杂度小于O(N); 例: 1 2 3 4 5 6 7 8 9 这里时间复杂度O(N) = row + col; //行数+列数 要使时间复杂度小于O(N),则必须从右上角开始走或者从左下角开始,如图所示,最长也是5,小于行数+列数 这里就这两种策略来写,分别采用递归和非递归的方式: 我在代码中写了4个函数皆可实现要求: 1. Seek1(); //非递归 右上角开始
分类: 其他 发布时间: 11-10 23:24 阅读次数: 0

qsort函数解析

qsort函数是一种回调函数,是基于快速排序的算法,可以实现排序。 这里先看一下qsort函数的参数 void qsort(void* base, size_t num, size_t size,int(*compar)(const void*, const void*)); 第一个参数是传要排列的数组; 第二个参数是数组中元素的个数; 第三个是数组中每个元素的长度; 最后一个参数是一个函数指针,指向一个比较函数。 说明:函数名和&函数名都是指向函数的地址,所以在qsort函数中,最后一个参数
分类: 其他 发布时间: 11-10 23:23 阅读次数: 0

strlen函数详解

在c语言中,strlen函数,引用<string.h>头文件,作用是计算字符串长度。 定义 : size_t strlen ( const char * str ); 这里有两处说明: 1.返回类型size_t size_t 可以看作 unsigned long ,是无符号长整形。 2.参数用 const 修饰 const 修饰的数据类型是指常类型,常类型的变量或对象的值是不能被更新的。然而 const 的位置不同,被限制的对象 也不相同,这里写三个代码比较一下: (1)const char
分类: 其他 发布时间: 11-10 23:23 阅读次数: 0

Emmet的HTML语法

https://blog.csdn.net/fghsfeyhdf/article/details/78069259
分类: 其他 发布时间: 11-10 23:22 阅读次数: 0

struts2 <action>无法使用通配符解决办法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qwl755/article/details/83899480 在我们使用struts2的时候,肯定不想每一个方法就写一<action>,所以通常我们会使用通配符,简化我们的代码。 <action name="userAction_*" class="userAction" method="{1}" > <result name="login">/login.jsp</result> <resul
分类: 其他 发布时间: 11-10 23:22 阅读次数: 0

CSDN编辑器

这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一个表格 设定内容居中、居左、居右 SmartyPants 创建一个自定义列表 如何创建一个注脚 注释也是必不可少的 KaTeX数学公式 新的甘特图功能,丰富你的文章 UML 图表 FLowchart流程图 导出与导入 导出 导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markd
分类: 其他 发布时间: 11-10 23:22 阅读次数: 0

angular国际化

随着世界各地Web访问量的增加,作为开发者的我们也在不断让应用国际化、本地化。当用 户访问我们的应用时,他应该能够在运行时立即切换语言环境。 鉴于我们正在开发的是AngularJS客户端应用,尤其不希望用户必须刷新页面或者访问一个 完全不同的URL。当然,AngularJS可以很容易地调整那些国际化读者的本机语言环境,或许通 过为不同语言生成不同模板的方式为应用提供服务。 然而,这个过程可能会很麻烦,当我们想要改变应用的布局时会发生什么情况?每个独立的 模板都需要重新构建和部署。而这个过程应该
分类: 其他 发布时间: 11-10 23:21 阅读次数: 0

anglar进度条+判断

<tr ng-repeat="result in queryMsgTask"> <td>{{result.title}}</td> <td>{{result.content}}</td> <td>{{result.page}}</td> <td>{{result.templateId}}</td> <td>{{result.openId}}</td> <td> {{msgStatusToChinese(result.status)}} <span style="display:none;">{
分类: 其他 发布时间: 11-10 23:21 阅读次数: 0

我是菜鸟,我怕谁

版权声明:欢迎转载,如果转载,请注明转载地址,谢谢! https://blog.csdn.net/qq_40763929/article/details/83928960 Description lin2144是一只小菜鸟,都是笨鸟先飞,lin2144想来个菜鸟先飞,他从0点出发 一开始的飞行速度为1m/s,每过一个单位时间lin2144的飞行速度比上一个单位时间的飞行速度快2m/s,问n (0 < n < 10^5)个单位时间之后lin2144飞了多远? Input 输入一个T表示为有几组数
分类: 其他 发布时间: 11-10 23:20 阅读次数: 0

Asp.Net套用母版页后元素ID不一致之个人总结

Asp.Net套用母版页后元素ID不一致之个人总结来自森大科技官方博客http://www.cnsendblog.com/index.php/?p=102在内容页里,在这个标签对里:<asp:ContentID="content"ContentPlaceHolderID="MainContent"runat="server">
分类: 编程语言 发布时间: 11-10 23:20 阅读次数: 0