C语言中的自定义函数
C语言中可以使用系统函数也可以使用自己的函数,就是自定义函数
自定义函数分为四种
第一种:无参无返回值的
函数的声明
void sayH();
函数的实现
void sayH(){
printf("你好");
}
第二种:有参数无返回值
函数的声明:
void pxsbx(int c,int k);
函数的实现:
void pxsbxx(int c,int k){
int i,j;
for (i=; i<c; i++) {
for (j=; j<=i; j++) {
printf(" ");
}
for (j=; j<k; j++) {
if (j==||j==k-||i==||i==c-) {
printf("*");
}else{
printf(" ");
}
}
printf("\n");
}
}
函数的调用
int c,k;
printf("请输入长:");
scanf("%d",&c);
printf("请输入宽:");
scanf("%d",&k);
pxsbxx(c, k);
运行结果

3,有参数有返回值
声明:
int add1(int num1,int num2,int num3);
实现
int add1(int num1,int num2,int num3){
int sum=num1+num2+num3;
return sum;
}
调用
int num1,num2,num3,sum;
scanf("%d%d%d",&num1,&num2,&num3);
sum=add1(num1, num2,num3);
printf("%d",sum);
效果

第四种:有参数无返回值
声明
void add(int num1,int num2);
实现
void add(int num1,int num2)
{ int sum=num1+num2;
printf("%d\n",sum);
}
二,递归函数(两个简易的递归调用)
1,阶乘
函数的声明
int MyFun(int num);
函数的实现
int MyFun(int num){
// 普通函数
// int sum1=1;
// for (int i=1; i<=num; i++) {
// sum1*=i;
// }
// return sum1;
// 递归调用
if (num==||num==) {
return ;
}else {
return num*MyFun(num-);
}
}
调用
printf("sum=%d\n",MyFun(6));
运行效果

2,菲波那切数列数列
函数的声明
int fbsnq(int num);
函数的实现
int fbsnq(int num){
// 递归
if(num==||num==){
return ;
}
return fbsnq(num-)+fbsnq(num-);
//普通
// int n1=1,n2=1,temp=0;
// if (num==1||num==2) {
// return 1;
// }
// int i=2;
// for(;i<num;i++){
// temp=n1+n2;
// n1=n2;
// n2=temp;
// }
// return temp;
}
函数的调用
for (int i=; i<=; i++) {
if ((i-)%==) {
printf("\n");
}
printf("%10d", fbsnq(i));
}
printf("\n\n");
运行结果

C语言中的自定义函数的更多相关文章
- Entity Framework 6 Recipes 2nd Edition(10-5)译 -> 在存储模型中使用自定义函数
10-5. 在存储模型中使用自定义函数 问题 想在模型中使用自定义函数,而不是存储过程. 解决方案 假设我们数据库里有成员(members)和他们已经发送的信息(messages) 关系数据表,如Fi ...
- 如何在C语言中调用Swift函数
在Apple官方的<Using Swift with Cocoa and Objectgive-C>一书中详细地介绍了如何在Objective-C中使用Swift的类以及如何在Swift中 ...
- C语言中返回字符串函数的四种实现方法 2015-05-17 15:00 23人阅读 评论(0) 收藏
C语言中返回字符串函数的四种实现方法 分类: UNIX/LINUX C/C++ 2010-12-29 02:54 11954人阅读 评论(1) 收藏 举报 语言func存储 有四种方式: 1.使用堆空 ...
- C语言中返回字符串函数的四种实现方法
转自C语言中返回字符串函数的四种实现方法 其实就是要返回一个有效的指针,尾部变量退出后就无效了. 有四种方式: 1.使用堆空间,返回申请的堆地址,注意释放 2.函数参数传递指针,返回该指针 3.返回函 ...
- C语言中关于scanf函数的用法
scanf()函数的控制串 函数名: scanf 功 能: 执行格式化输入 用 法: int scanf(char *format[,argument,...]); scanf()函数是通用终端格式化 ...
- 【转载】 Sqlserver中查看自定义函数被哪些对象引用
Sqlserver数据库中支持自定义函数,包含表值函数和标量值函数,表值函数一般返回多个数据行即数据集,而标量值函数一般返回一个值,在数据库的存储过程中可调用自定义函数,也可在该自定义函数中调用另一个 ...
- SparkSQL中的自定义函数UDF
在Spark中,也支持Hive中的自定义函数.自定义函数大致可以分为三种: UDF(User-Defined-Function),即最基本的自定义函数,类似to_char,to_date等 UDAF( ...
- C语言中文件定位函数总结
C语言中文件定位函数主要是:fseek, ftell, fsetpos, fgetpos. 先来讲前两个函数,这是最基本的定位函数: fseek函数:能把文件指针移动到文件任何位置,其原型是:int ...
- C语言中变量和函数的作用域和链接属性
C语言中变量和函数的作用域和链接属性 作用域 代码块作用域: 代码块指的是使用"{}"包围起来的部分. 在代码块中定义的变量,代码块之外是不能访问的. 代码块嵌套之后的变量作用域, ...
随机推荐
- Java -- 根据当前日期获取当前一周的所有日期
Learn From:http://my.oschina.net/hermer/blog/151274 /** * 测试 * @param args */ public static void mai ...
- nodejs 常用全局包
1.nodemon 更改node程序后程序自动启动 (nodemon app.js) npm install nodemon -g 2.gulp 压缩合并代码等 npm install gulp - ...
- 学习android开发笔记
最近重点看了几个android工程的源代码,有几点疑问 1:为什么android客户端游戏要开启n个线程,而且通常每个线程的操作只有i++: 2:为什么很多列表在游戏逻辑和绘制逻辑里没有做同步: 3: ...
- IOS开发UI基础UISlide属性
UISlide属性 • minimumValue : 当值可以改变时,滑块可以滑动到最小位置的值,默认为0.0_slider.minimumValue = 10.0; • maximum ...
- “康园圈--互联网+校园平台“项目之Sprint3
sprint3任务列表 1.部署项目内测版上线,并绑定相应域名. 2.添加测试用的模拟数据. 3.写已实现功能及效果汇报文档. 4.写项目总结博客. 5.记录并分析用户反馈. 看板动态 第一次 第二次 ...
- OnMeasureItem和OnDrawItem的区别和联系
我们在做程序设计时界面与功能,那个更加吸引用户的兴趣呢?这是一个很难回答的问题.拥有美丽的外观,软件就成功了一半.界面由控件.工具栏.菜单.窗体等元素组成,对他们进行美化就能得到一个美丽的界面. 目前 ...
- 一个App的界面设计流程是怎么产生的
作者:候佩雯链接:http://www.zhihu.com/question/27088793 完整的流程,分层次设计,自下而上去完成: 策略层,定义产品使命.价值.目标人群 愿景/功能层:定义核心场 ...
- C#的pictureBox怎样使用多张图片简单切换
首先,先创建一个新的winform项目ImageTest,选择窗体,起名我ImageForm,在ImageForm拉一个picturebox控件,一个控制器trimer,一个相册imageList,在 ...
- 重新想象 Windows 8 Store Apps (37) - 契约: Settings Contract
[源码下载] 重新想象 Windows 8 Store Apps (37) - 契约: Settings Contract 作者:webabcd 介绍重新想象 Windows 8 Store Apps ...
- Fluent NHibernate other example
测试用的当前最新版本: sql: --- CREATE TABLE Users ( UserID INT IDENTITY(1,1) PRIMARY KEY, [Name] VARCHAR(50) N ...