函数:
函数就是一段具备特定功能的程序段,C语言程序是由函数组成。
定义函数的目的: 将一个功能封装以来方便复用
函数的定义格式:
返回值类型 函数名称(形参列表)
{
函数体; // 语句; ...
}
return的应用场景
1.返回数据
2.结束函数
3.提前结束函数
4.return后面不可以写任何语句, 因为执行不到
一个函数只能返回一个结果
// 注意: 形参列表中的变量只有当函数被调用时才会分配存储空间
// 形参列表中的每一个变量我们称之为, 形式参数, 简称形参
int test(int x, int y) {
int result = (x + y) / 2;
return result;
}
如果"基本数据类型"(char、int、double、float)作为函数的参数,在函数中修改形参的值,不会影响到外面实参的值。
实参的个数, 必须和形参的个数相同
C语言是弱语言,函数可以没有返回值类型
// 如果函数没有写返回值类型, 那么默认就是int类型
test()
{
return 1.75;
}
函数的声明, 只需要在函数被使用之前告知系统就可以了, 它可以写在函数的外面也可以写在函数的里面
递归函数:函数自己调用自己(迭代)
一般情况下,能用循环做的事情,用递归函数都能做;但是递归性能相对比较低。
注意: 递归一定要由一个明确的结束条件, 否则会造成死循环(无限循环)
递归函数的格式:
#include是一个预处理指令,作用是:把所包含的文件的内容,拷贝到#include的指令所在位置
#include<stdio.h>===standard input output 标准输入输出
#include<stdlib.h>===standard library 标准库
文件包含命令:
#include <>与 #include " " 的区别:
#include <> :包含一个系统提供的头文件
#include " " :包含一个用户自己定义的文件(.h .txt .c 等)
include后面的 <> 和 "" 的区别
- 使用<>代表会先从开发工具的编译环境中去查找,如果没找到再去系统的编译环境中去找
开发工具的编译环境:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/
系统的编译环境:/usr/include/stdio.h
- 使用" "代表会先从当前文件所在的文件夹下面查找,如果没找到就会去开发工具的编译环境中查找,如果还没找到,最后再去系统的编译环境中找。
注意: include后面不一定要写文件名称 也可以写路径(相对路径/全路径)
#include "one.txt" #include "abc/one.txt"
案例:
打印一个班级中学生的成绩和总成绩:
现有某班级中的学生成绩,如下表所示:
创建程序,首先随机生成每个学生每门课程的成绩,然后计算每个学生的总分,最后计算每科的总分。
此题的核心:如何求二维数组的列和!
打印完成后,首先将每门课程成绩累加到一个变量total中,该变量保存的是每个学生的各门课的总成绩;然后再将每门课程成绩累加到数组元素sum[j] 中,其中sum[0]代表C语言,sum[1]代表OC语言,sum[2]代表Foundation,sum[3]代表UIKit。