- 一.之前知识衔接
- 1.循环
- (1)for
- (2)while(当型循环结构)
- (3)do while(直到型循环结构)
- 2.数组
- (1)一维数组
- (2)矩阵
- 二.函数(方法)
- 1.函数的定义
- (1)参数(实参与形参)
- 2.函数的调用
- 3.全局变量和局部变量
- 4.函数的递归
for(循环变量赋值;循环结束条件;循环变量增值){
}
建议循环变量赋初始值
当型循环结构是先在执行了一次循环体前,再对控制条件进行判断,当条件不满足时执行循环体,满足时则停止。
(3)do while(直到型循环结构)直到型循环结构是先在执行了一次循环体之后,再对控制条件进行判断,当条件不满足时执行循环体,满足时则停止。所以无论是否满足条件,第一次一定执行。
2.数组数组定义
类型符 数组名 [常数表达式]
int a[12]; float a[5]; double a[4]; char a[9]; ……(1)一维数组
int a[12]; float a[5]; double a[4]; char a[9]; ……(2)矩阵
int a[12][32]; float a[5][6][7]; double a[4][9]; char a[9][12][45][6][3]; ……
冒泡排序
#include二.函数(方法) 1.函数的定义int a[10]; int cont = 0; int main() { //数组的初始化 for (int i = 0;i<10;i++) { printf("请输入第%d位数:",i); scanf_s("%d",&a[i]); } //进行排序 for (int i = 10; i >0; i--) {//第一层循环只是为了控制次数 for (int j = 0;j a[j+1]) { cont = a[j]; a[j] = a[j + 1]; a[j + 1] = cont; } } } for (int i = 0;i<10;i++) { printf("%d ",a[i]); } }
定义一个函数我们需要确定三部分内容:
1.函数的返回值类型: void,int float,double,char……
2.函数的名称: 推荐使用驼峰命名法
3.函数的参数 形参和实参的数据类型要相同
如果函数的返回值类型为 void 则不需要在函数末尾加return语句
其余返回值类型的函数需要在函数末尾加return语句
调用函数时首先定义形参并分配存储空间,然后使用实参进行初始化(即将实参拷贝给形参完成初始化)。此处可以看出实参、形参是不同的存储位置。
#include2.函数的调用int sum(int n); void a(int n); int main() { // printf("%d",sum(100)); int n = 0; printf("%dn",&n); a(n); return 0; } void a(int n) { printf("%d",&n); } int sum(int n) { if (n==1) { return n; } printf("%dn", &n); return n+sum(n-1); }
C语言中函数的调用需要注意以下几点
(1)调用函数的时候一定要带上括号
(2)函数如果定义在主函数下面一定要在代码开头进行函数声明
(3)推荐将函数定义在主函数下面,等代码量一多打开文件就能看见主函数
在一个函数内部定义的变量只能在本函数内范围内有效。
如果A函数调用了B函数,那么A中定义的变量将可以在B中使用。
参考代码
#includeint print_number1(); void print_number2(); float print_number3(); double print_number4(); int i = 0; int main() { int a[2][2][2]; for (int i = 0;i<20;i++) { for (int j = 0;j<20;j++) { for (int k = 0;k<20;k++) { // a[i][j][k] = i + j + k; // printf("%dn",a[i][j][k]); printf("%d %d %d n", i, j, k); } } } printf("%dn", i++); printf("%dn", i); printf("%dn",++i); printf("%dn", i); printf("%dn",print_number1()); print_number2(); printf("%dn", print_number3); printf("%dn", print_number4); print_number2(); return 0; } int print_number1() { int number; printf("请输入一个数"); scanf_s("%d",&number); return number; } float print_number3() { float number; printf("请输入一个数"); scanf_s("%f", &number); return number; } double print_number4() { double number; printf("请输入一个数"); scanf_s("%lf", &number); return number; } void print_number2() { int number; printf("请输入一个数"); scanf_s("%d",&number); printf("%d",number); }
计算1-n的和
#includeint sum(int n); int main() { printf("%d",sum(100)); return 0; } int sum(int n) { if (n==1) { return n; } return n+sum(n-1); }



