#include <stdio.h>

/* Demo 01：基础语法
 * 编译运行：cc 01_基础.c -o demo && ./demo
 */
int main()
{
    // 1. 变量与常量
    int a = 7, b = 2;
    const double PI = 3.14159;
    printf("PI = %.4f\n", PI);

    // 2. 各种进制
    int octal = 015;   // 八进制
    int hex = 0X2A;    // 十六进制
    printf("octal=%d(13) hex=%d(42)\n", octal, hex);

    // 3. 运算符
    printf("a/b=%d a%%b=%d a>>1=%d 1<<10=%d\n", a / b, a % b, a >> 1, 1 << 10);

    // 4. 输入输出（取消注释交互）
    // int input;
    // scanf("%d", &input);
    // printf("你输入的是：%d\n", input);

    // 5. 类型转换
    printf("(int)3.99 = %d\n", (int)3.99);      // 3，截断
    printf("7/2*1.0 = %f\n", 7 / 2 * 1.0);      // 3.000000，先整数除法再转浮点
    printf("7*1.0/2 = %f\n", 7 * 1.0 / 2);      // 3.500000，先转浮点再除

    return 0;
}
