当前位置 博文首页 > HyDraZya的博客:【C语言基础】C语言初步认识(1)

    HyDraZya的博客:【C语言基础】C语言初步认识(1)

    作者:[db:作者] 时间:2021-09-05 09:46

    目录

    一、常量

    1.字面常量:

    2.const修改常变量:

    3.#define 定义的标识符常量:

    4.枚举常量:

    二、字符串+转义字符+注释

    1.字符串:字符串是由双引号引起的一串字符

    2.转义字符 :

    3.注释

    三、选择语句

    四、循环语句?

    五.函数

    六.数组

    ????????数组定义:

    ????????数组使用:?

    七.运算符

    单目运算符:只对一个变量进行操作。

    双目预算符:对两个变量进行操作;

    三目运算符:对三个变量进行操作;


    一、常量

    常量:C语言中的常量和变量的定义的形式有所差异。

    • 字面常量
    • const修饰的常变量
    • define定义的标识符常量
    • 枚举常量

    1.字面常量:

    /* 3; 3.14; 100; */

    2.const修改常变量:

    //const - 常属性
    
    const int num = 4;
    
    printf("%d\n",num);
    
    num = 8;
    
    printf("%d\n",num);

    3.#define 定义的标识符常量:

    #define MAX 10
    
    int main()
    
    {
    
    int arr[MAX] = {0};
    
    printf("%d\n", MAX);
    
    return 0;
    
    }

    4.枚举常量:

    //关键字 - enum
    enum Sex
    
    {
       MALE,
       FEMALE,
       SECRET
    };
    //MALE,FEMALE,SECRET -枚举常量
    int main()
    {
    
       enum Sex s = FEMALE;
    
       printf("%d\n",MALE);//0
       printf("%d\n",FEMALE);//1
       printf("%d\n",SECRET);//2
    
       return 0;
    }
       
    enum Color
    {
       RED,
       YELLOW,
       BLUE
    };
    int main()
    {
       enum Color color = BLUE;
       color = YELLOW;
    
       return 0;
    }

    枚举常量不能改变,但是枚举的类型是可以改变的 如:blue 改为 yellow


    二、字符串+转义字符+注释

    1.字符串:字符串是由双引号引起的一串字符

    注:字符串的结束标志是一个\0的转义字符。在计算字符串长度的时候\0是结束标语,不算做字符串内容。

    //"hello bit.\n";
    //"";  空字符串
    #include <stdio.h>
    int main()
    {
       char arr1[] = "abc";//数组
       //"abc" -- 'a' 'b' 'c' '\0' -- '\0'字符串的结束标志
       char arr2[] = {'a','b','c', 0};
       //'a' 'b' 'c' 若后面无'\0'则产生随机值
       printf("%s\n", arr1);
       printf("%s\n", arr2);
    
       return 0;
    }
    #include <string.h>
    int main()
    {
       char arr1[] = "abc";//数组
       char arr2[] = {'a','b','c', 0};
       printf("%d\n", strlen(arr1)); // 3
       //strlen -string length 字符串长度
       printf("%d\n", strlen(arr2)); // 随机值
       return 0;
    }

    2.转义字符 :

    数据在计算机上存储的时候,存储的是2进制

    ASCII 编码

    ASCII 码值,如:a - 97 A-65 0-48 等……大写和小写字母之间相差32

    转义字符

    字符值

    \‘

    一个单撇号(‘)

    \“

    一个双撇号(“)

    \?

    一个问号(?),防止被解析称三子母词

    \\

    一个反斜线(\)防止被解释为一个转义序列符

    \a

    警告(alert)

    \b

    退格(backspacce)

    \f

    换页(form feed)

    \n

    换行

    \r

    回车(carriage return)

    \t

    水平制表符

    \v

    垂直制表符

    \d,\dd,\ddd

    表示1-3个八进制码数对应的ASCII字符。如:\130 X

    \xdd

    表示2个十六进制码对应的ASCII字符。如:\x30 0

    3.注释

    (1):代码中又不需要的代码可以直接删除,也可以注释

    (2):代码中有些代码比较难懂,可以加一下注释文字

    • C语言风格的注释: /* abcdefg?*/? (不能嵌套注释)
    • C++中风格的注释: // xxxxxxxx? ?(可以注释一行也可以注释多行)

    三、选择语句

    :分支结构

    int main()
    {
       int coding = 0;
       printf("你回去敲代码吗?(选择1 or 0)>:");
       scanf("%d", &coding);  // 1/0
       if(coding == 1)
           printf("坚持,你会有好offer\n");
       else
           printf("放弃,回家卖红薯\n");

    四、循环语句?

    • while语句
    • for语句
    • do … while语句
    //while语句
    int main()
    {
       int line = 0;
       printf("我要好好学习\n");
       while(line<20000)
       {
           printf("敲一行代码\n");
           line++;
       }
       printf("好offer\n");
    
       return 0;
    }

    五.函数

    特点:简化代码,代码复用

    #include <stdio.h>
    int Add(int x, int y)
    {
        int z= x+y;
        return z;
    }
    int main()
    {
       int num1 = 10;
       int num2 = 20;
       int sum1,sum2;
       int a = 100;
       int b = 200;
       sum1 = Add(num1, num2);
       sum2 = Add(a, b);
       printf("sum1 = %d\n", sum1);
       printf("sum2 = %d\n", sum2);
    
       return 0;
    }

    六.数组

    C语言中给数组的定义:一组相同类型元素的集合

    数组定义:

    int arr[10] = {1,2,3,4,5,6,7,8,9,0}; //定义一个整形数组,最多放10个元素

    数组使用:?

    #include <stdio.h>
    int main()
    {
       int arr[10];//定义一个存放10个整型数字的数组
       char ch[20];//定义一个存放20个字符串类型的数组
       float arr2[5];//定义一个存放5个浮点数类型的数组
       int arr3[10] = {1,2,3,4,5,6,7,8,9,10};
       //0-9
       int i = 0;
       while (i<10)
       {
           printf("%d ",arr3[i]);
           i++;
       }
    
       return 0;
    }
    

    七.运算符

    运算符类型运算符类别
    算数运算符*? -? +? /? %
    关系运算符>? <? ==? !=? >=? <=
    逻辑运算符!? &&? ||
    位运算符<<? >>? ~? |? ^? &
    赋值运算符= 及扩展赋值运算符
    条件运算符?:
    逗号运算符
    指针运算符

    *和&

    求字节数运算符sizeof
    强制类型转换运算符(类型)
    分量运算符.? ->
    下表运算符[ ]
    其他:如函数调用运算符()
    • 单目运算符:只对一个变量进行操作。

    • 双目预算符:对两个变量进行操作;

    • 三目运算符:对三个变量进行操作;

    a++; //单目运算符
    
    a=1; b=3; c=a+b; //双目运算符
    
    int a = boolean ? b : c; //三目运算符

    注意:条件运算符(?:)是C语言中惟一一个三目(三元)运算符

    cs