筱贺的C语言学习--第二天

本文学自于尚硅谷

关键字与标识符、命名规则

//
// Created by Administrator on 2025/1/7.
//
#include <stdio.h>

/*
 * 1.什么是标识符
 *   C语言中变量、函数、数组名、结构体等要素命名时使用的字符序列,称为标识符。
 *   >凡是我们可以命名的地方,都称为标识符
 *
 * 2.标识符的命名规则 -------> 必须遵守
 *      - 只能由26个英文字母大小写,0-9 或 _ 组成
        - 数字不可以开头
        - 不可以是关键字,但可以包含关键字
        - C99和C11允许使用更长的标识符名,但是编译器只识别前63个字符。(会忽略超出的字符)
        - 不允许有空格。
        - 严格区分大小写字母。比如:Hello、hello是不同的标识符。
 *
 * 3.标识符的命名建议 ------->可做可不做
 *      - 在起名字时,为了提高阅读性,要尽量有意义,“见名知意”。如:sum,name,max,year,total 等。
        - 不要出现仅靠大小写区分不同的标识符。如:name、Name 容易混淆
        - 尽量避免名字中出现数字编号,如value1、value2等,除非逻辑上需要编号。
        - 习惯上,所有宏定义、枚举常数、常量(只读变量)全用大写字母命名,用下划线分隔单词。
          比如: const double TAX_RATE = 0.08; //TAX_RATE 只读变量
        - 系统内部使用了一些下划线开头的标识符(比如两个下划线开头的变量名、一个下划线 + 大写英文字母开头的变量名)。比如,C99 标准添加的类型 `_Bool`。为防止冲突,建议用户尽量避免使用下划线开头的标识符。
        - 下划线通常用于连接一个比较长的变量名。如:max_classes_per_student。
        - 变量名、函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz (驼峰法,小驼峰)。比如:`short stuAge = 20; `,`tankShotGame`。
 *
 *
 *
 *
 * */

int main(){

    int num1 = 10;
    //int 1num = 10; //编译不通过

    //int return = 10; //不能用关键字命名标识符,可以包含命名

    int Return = 10; //编译通过

    int A =10;
    int a = 20;
    printf("a = %d, A = %d\n",a,A);
    
    int _num = 10; //不推荐
    
    int student_age = 10; //下划线的命名方式
    int studentID = 1001; //小驼峰的命名方式
    
    return 0;
}

初识变量

//
// Created by Administrator on 2025/1/7.
//
#include <stdio.h>
/*
 * 1.变量构成的三要素:数据类型、变量名、变量值
 *
 * 2.变量的声明格式:数据类型、变量名 = 变量值;
 *
 * 3.使用变量的注意点
 *      - C语言中每个变量必须先声明,后使用。
        - 不同的数据类型,占用的空间大小不一样。
        - 一旦声明,变量的类型就不能在运行时修改。
 * 4.变量的作用域
 *      - 变量的作用域:其定义所在的一对{ }内。
        - 变量只有在其`作用域`内才有效。出了作用域,变量不可以再被调用。
        - 同一个作用域内,不能定义重名的变量。
        - C 语言的变量作用域主要有两种:文件作用域(file scope)和块作用域(block scope)。
 * 5.变量按数据类型的分类
 *  >基本数据类型
 *          >整型:short\int\long
 *          >浮点型 float \ double
 *          >字符型 char
 *          >后续新增的类型 整型 long long 浮点型 long double 布尔类型 _Bool
 *      >构造类型
 *      >指针类型
 *      >void类型
 * 
 * */

int main(){
    //1.1变量的声明
    int num1;
    int num2;

    //1.2变量的赋值(初始化)
    num1 = 10;
    num2 = 20;

    //合并:变量在声明的同时,进行赋值
    int num3 = 30;

    //2.变量的使用(必须在使用之前对变量进行初始化)
    num3 = num3 + 1;
    printf("num3 = %d\n",num3);

    //反例
//    int num4;
//    printf("num4 = %d\n",num4);//不能在初始化变量之前使用变量

//    int num1 = 100; //同个一个作用域不能命名同名的
//    return 0;

    for(int i = 1;i <= 10;i++){
        printf("i = %d\n",i);
    }

}

//其他的函数
//int func(){
//    printf("num3 = %d\n",num3); //超出了作用域
//}

 整数类型

//
// Created by Administrator on 2025/1/7.
//
#include <stdio.h>
#include <limits.h>

/*
 * 整型的使用
 *
 * 1.short/ int / long / long long
 * 以64位编译器为例:
 *          short: 2个字节
 *          int : 4个字节
 *          long :8个字节
 *          long long :8个字节 (c99)
 *2.整型可以被singed 、 unsinged 修饰
 *
 *3.最常用的整型类型为:int类型。
 *
 *4.整数型常量,默认为int类型。
 *
 *5.关于后缀:
 * 声明Long类型的后缀是可以用L l结尾
 */
int main(){

    int i1 = 10; //忽略了signed
    signed int i2 = 10;

    i1 = -10;

    //声明一个无符号的整数:非负数
    unsigned int i3 = 10;

    //关于后缀:
    long l1 = 122324345353;
    long l2 = 23894782374023L;

    printf("%d\n", INT_MIN  );  // -2147483648
    printf("%d\n", INT_MAX  );  // 2147483647
    return 0;
}

浮点数类型

//
// Created by Administrator on 2025/1/7.
//关于浮点类型的使用
#include <stdio.h>

/*
 * 1.常用的类型: float /double /long double
 * 2.float 表示数据的范围要大于long类型的范围
 * 3.浮点型变量不能使用signed或unsigned修饰符。
 * 4.最常用的浮点类型为:double 类型,因为精度比float高。
 * 5.浮点型常量,默认为 double 类型。
 * 6.关于后缀
 *      如果定义float类型,这需要以F f 作为后缀
 *      如果定义long double类型,这需要以L l 作为后缀
 */
int main(){

    double d1 = 12.3;
    double d2 = d1 + 2.3; //2.3 是double类型
    float f1 = 12.3F;
    float f2 = 12.3f;

    long double d3 = 12.3l;
    //有人用温度计测量出用华氏法表示的温度(如64°F),今要求把它转换为以摄氏法表示的温度(如17.8℃)。转换的公式为:$c = \frac{5}{9}(f - 32)$。
    //
    //其中,f 代表华氏温度,c 代表摄氏温度。
    float f, c; //定义f和c分别表示华氏温度、摄氏温度
    f = 64.0; //指定f的值
    c = (5.0 / 9) * (f - 32); //利用公式计算c的值
    printf("f=%f\nc=%f\n", f, c); //输出c的值
    return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值