C语言5(函数)
来源:互联网 发布:python绝技百度云 编辑:程序博客网 时间:2024/06/08 13:41
C语言5(函数)
#pragma mark - 定义函数
//调用函数//无返回值,无参数
// greeting();
// greeting();
// greeting();
// greeting();
//无返回值,有一个参数
// sumOfNumber(100);
//有返回值,有一个参数
int a = 0;
printf("input number:");
scanf("%d",&a);
int sum = sumOfVaule(a);
printf("sum = %d\n",sum);
#pragma mark - 实参和形参
//实参:实际参数,传入的那个数
//1.实参的个数必须要和形参的个数相同,类型相同
//2.实参的值进行拷贝,将副本传递给形参
//形参:形式参数
//1.形参可有(多个,逗号进行间隔)可无
//2.保存传入的数据
//3.形参不可以重名
#pragma mark - return
//return作用
//1.可以返回值给调用者
//2.退出函数
//3.可以提前退出:return;
//练习:求 两个数中的最大数
// int a = 10;
// int b = 20;
//
// int max = maxOfValue(a, b);
// printf("max = %d\n",max);
//
////求两个数的平方和
sumOfSquare(20, 30);
#pragma mark - 函数注意点
/*
1.不允许函数名称一样
2.函数不可以嵌套定义
3.函数需要先声明和定义才可以使用
4.函数的声明可以写在main函数里面(只要保证调用前有就ok)
5.只有函数的声明没有函数的定义,无法正常运行
*/
#pragma mark - 函数的嵌套
// long sum = 0;
// for (int i = 2; i <= 3; i ++) {
//// int squ = square(i);
//// long fac = factor(squ);
// long fac = factor(square(i));
// sum += fac;
//
// }
//
// printf("sum = %ld\n",sum);
//
#pragma mark - 数组作为函数的参数
// int array[3] = {1,4,3};
// exchange(array[0], array[1]);
//// printf("main: a = %d,b = %d\n",array[0],array[1]);
//
// exchangeOfArray(array);
// printf("main: arr = %d,arr = %d\n",array[0],array[1]);
//
// return 0;
主函数main的外部方法
void exchange(int a, int b){
int temp = a;
a = b;
b = temp;
printf("自定义:a = %d,b = %d\n",a,b);
}
void exchangeOfArray(int array[]){
int temp = array[0];
array[0] = array[1];
array[1] = temp;
printf("自定义:arr = %d,arr = %d\n",array[0],array[1]);
}
//返回值 函数名 (参数1,参数2.....){函数体}
创建C File 把函数写入创建文件中 主函数在调用
.h文件中(声明函数)
//声明函数
void greeting();
void sumOfNumber (int a);
int sumOfVaule(int number);
int maxOfValue(int a, int b);
void sumOfSquare(int a, int b);
int square(int a);
long factor(int number);
.m文件中(写方法)
//函数定义,函数实现
void greeting(){
printf("早上好!");
}
void sumOfNumber (int a){
int sum = 0;
for (int i = 1; i <= a; i ++) {
sum += i;
}
printf("sum = %d\n",sum);
}
int sumOfVaule(int number){
int sum = 0;
for (int i = 1; i <= number; i ++) {
sum += i;
}
return sum;
}
int maxOfValue(int a, int b){
int max = 0;
max = a > b ? a : b;
return max;
}
void sumOfSquare(int a, int b){
int sum = a * a + b * b;
printf("sum = %d\n",sum);
}
//平方
int square(int a){
return a * a;
}
//阶乘
long factor(int number){
long result = 1;
if (number == 1 || number == 0) {
return 1;
}else{
// for (int i = 1; i <= number ; i ++) {
// result *= i;
// }
result = number * factor(number - 1);
//
// 5 * factor(4);
//
// 5 * 4 * factor(4 - 1);
//
// 5 * 4 * 3 * factor(3 - 1);
//
// 5 * 4 * 3 * 2 * factor(2 - 1);
//
// 5 * 4 * 3 * 2 * 1;
return result;
}
}
- C语言5(函数)
- C语言(函数)
- C语言函数大全(5)
- 深入浅出C语言(5)----函数
- 函数调用(C语言)
- C语言函数(一)
- C语言函数(二)
- pipe 函数 (C语言)
- pipe 函数 (C语言)
- C语言函数clock()
- C语言sizeof()函数
- C语言函数clock()
- c语言(scanf函数)
- strlen(C语言函数)
- C语言(函数指针)
- C语言--函数(方法)
- select函数(C语言)
- C语言(七)--函数
- Android SDK 在线更新镜像服务器资源
- [dhtmlxGant(甘特图)开发手册]第一篇——如何使用dhtmlxGantt
- 整数划分
- JavaScript中的模块化之AMD和CMD
- iOS后台定位实现
- C语言5(函数)
- memcached学习笔记1(windows 7 64bit 环境下安装memcached)
- Lehmer快速求1e11以内质数个数
- Oracle之分页查询
- JDK源码学习(5)-Map的性能比较,HashMap和TreeMap,ConcurrentSkipListMap
- CentOS下将MySQL 5.1升级到MySQL 5.5
- line ending对AWK print的影响
- jackson byte[]
- XML中必须进行转义的字符