简单的函数调用

    1. #include <stdio.h>
    2. #include <stdlib.h>
    3. void printfwz() //定义一个 无参数函数 函数就是一个功能 ,过程的封装
    4. {
    5. printf("函数调用");
    6. }
    7. int main(int argc, char *argv[]) {
    8. printfwz();
    9. return 0;
    10. }
    11. //函数不能放在main 函数 后面 ,就不能调用 ,只能在main 函数上边

    函数 调用 和创建一个 头文件 *.h 文件
    再在main 函数调用
    main.c “Untitled2.h”
    image.png image.png

    行参 实参

    1. #include <stdio.h>
    2. #include <stdlib.h>
    3. #include "Untitled2.h"
    4. //形式参数
    5. void printfsc(int a,char b) //可以定义多个
    6. {
    7. printf("%d\n%c\n",a,b);
    8. }
    9. int main(int argc, char *argv[]) {
    10. //实参
    11. printfsc(6,'a');
    12. return 0;
    13. }

    返回值
    main 主文件

    1. #include <stdio.h>
    2. #include <stdlib.h>
    3. #include "Untitled2.h"
    4. int main(int argc, char *argv[]) {
    5. int na = add(10,20);
    6. printf("%d",na);
    7. return 0;
    8. }

    头文件

    1. #include <stdio.h>
    2. #include <stdlib.h>
    3. int add(int a, int b)
    4. {
    5. int c = a + b;
    6. return c;
    7. }

    递归
    ——- 简而言之 函数自己调用自己

    1. #include <stdio.h>
    2. #include <stdlib.h>
    3. #include "Untitled2.h"
    4. //全局变量
    5. count = 0;
    6. void printf01(int a)
    7. {
    8. printf("%d\n",a);
    9. if(count<50) //不用全局 变量就用a
    10. {
    11. // 这里可以使用全局变量来计数 不能使用局部变量
    12. count++;
    13. printf01(++a); //不能使用a++ 不然会一直是初始数 ,因为先输出 不会计算
    14. }
    15. }
    16. int main(int argc, char *argv[]) {
    17. printf01(0);
    18. return 0;
    19. }

    —————————————————————————————————————————————————————————————————————————————————————————————————————————-
    数组
    C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。

    1. #include <stdio.h>
    2. #include <stdlib.h>
    3. #include "Untitled2.h"
    4. int main(int argc, char *argv[]) {
    5. // 几种定义数组的格式
    6. int a[]={123456789};
    7. int c[10]={1,2,3,4,5,6,7};
    8. char b[10]={'a','b','c','d','e','f','j'};
    9. printf("%c\n",b[5]);
    10. printf("%d\n",a[5]);
    11. printf("%d\n",c[5]);
    12. return 0;
    13. }
    14. ------------------------------------------------------------------------------------------------------------------------------------------------------------------
    15. #include <stdio.h>
    16. #include <stdlib.h>
    17. #include "Untitled2.h"
    18. int main(int argc, char *argv[]) {
    19. int a[20];
    20. int b,c;
    21. //初始化数组元素
    22. for (b=0;b<20;b++)
    23. {
    24. //设置元素b 为 b+1
    25. a[b]=b+2;
    26. }
    27. //输出数组中每个元素的值
    28. for (c=0;c<20;c++)
    29. {
    30. printf("Element[%d]=%d\n",c,a[c]);
    31. }
    32. return 0;
    33. }

    二维数组
    二维数组在逻辑上是方正 ,行和列组成,
    type name[size1][size2]…[sizeN];
    但是列可以决定行

    1. #include <stdio.h>
    2. #include <stdlib.h>
    3. int main(int argc, char *argv[]) {
    4. char a[5][2]={'a','b','c','d','e','f','j','h','i','j'};
    5. int i,j;
    6. for(i=0;i<5;i++)
    7. {
    8. for(j=0;j<5;j++)
    9. {
    10. printf("英文-%c-\n",a[i][j]);
    11. }
    12. }
    13. return 0;
    14. }
    15. ------------------------------------------------------------------------------------------------------
    16. 这个更简
    17. #include<stdio.h>
    18. int main(){
    19. int i;
    20. char names[6][50]={"马超","关平","赵云","张飞","关羽","刘备"};
    21. for(i=0;i<6;i++) {
    22. printf("悍将:%s\n",names[i]);
    23. }
    24. return 0;
    25. }