第一周C语言初识

第一讲 初识 C语言

一、转义序列

  1. \ + 字母 组成转义序列

  2. \n 是换行(写在 printf 双引号里面,用于换行)

  3. 补充转义序列

二、变量和赋值

  1. 声明一个整数 a:int a;

  2. 声明一个小数 b:float b;

  3. 初始化变量 a 为 1,初始化变量 b 为 3.14

 int a = 1;
 float b = 3.14;
  1. 给变量 a 赋值为 2,给变量 b 赋值为 5.6
 a = 2;
 b = 5.6;
  1. 变量的声明必须在使用前(且是要在 main 函数前面)

三、变量的运算

  1. 加减乘除取余

  2. + - * /(正斜杠)%(取余)

四、显示变量的值

  1. 占位符 %(用来显示变量的值,先占一个位置)

  2. int 类型的占位符 %d

  3. printf("体积:%d", volum);

五、读入用户输入内容赋值给变量

 scanf("%d", &lenth);
 scanf("%d", &width);
 scanf("%d", &high);
 ​
 volum = lenth * width * high;
 ​
 printf("体积:%d", volum);

六、完善一下程序

 printf("请输入物体的长:");
 scanf("%d", &lenth);
 ​
 printf("请输入物体的宽:");
 scanf("%d", &lenth);
 ​
 printf("请输入物体的高:");
 scanf("%d", &lenth);
 ​
 printf("物体的体积是:%d", volum);

补充注意:幻灯片里宽和高的 scanf 写错了,都写成 &lenth,正确应该分别是 &width、&high。

scanf 里面第一个参数必须加双引号,写成 scanf("%d", &变量名);,& 符号不能漏掉。

七、注释

 // 注释
 ​
 /* 注释 */
 ​
 /*
 Project Name: project1
 Description: 计算长方体体积
 Author: may
 Date: 2025-08-18
 */

八、整体代码结构分析

  1. 预处理指令之一,调用标准功能库

  2. 声明变量(在 main 之前哦)

  3. main 函数,有且只有一个(主函数区域):

    • 格式化输入 / 输出函数

    • 运算语句

  4. return 0;

九、预处理指令

  1. #include 包含

  2. #define 宏定义

 #define PI 3.14f
 ​
 m = 3.14f * r * r;  // 等价于
 m = PI * r * r;

十、变量声明

  1. int 整数 float 小数

  2. 变量命名规则:

    • 只能包含英文字母、数字、下划线 temputure_2

    • 不能以数字开头,必须以英文字母或者下划线开头 ✗ 3val 3_val ✓ val3 val_3

    • 不能和关键字重复 main int return

    • 区分大小写 May mAy maY may MAY MAy 互不相同

  3. 可以一次声明多个,中间用逗号隔开

 int a, b, c;
 int a = 1, b = 2, c = 3;
 int a, b = 2, c;

十一、格式化输入 / 输出

  1. printf 函数 函数 f(x) = x^2 f(2) = 4

  2. printf("格式串", 参数1, 参数2, 参数3, ……);

  3. 占位符 %d %f 转义序列 \n

 int a = 3;
 float b = 3.14;
 ​
 printf("a=%d\nb=%f", a, b);
  1. %nd %n.md %n.mf n 代表最小栏宽(这串数字的整体长度),如果不足将会左侧补空格,超过则正常显示

    • 前者 m 代表显示有效位数,不足补在前面 0,超过则正常显示

    • 后者表示小数点后有效位数,默认 6

  2. 占位符与参数不匹配

    • 参数多于占位符

    • 参数少于占位符

    • 数据类型不匹配

  3. scanf 函数

  4. scanf("格式串", 参数1, 参数2, 参数3);

 int a;
 float b;
 ​
 scanf("%d%f", &a, &b);
 ​
 scanf("a=%db=%f", &a, &b);  // 这里一定要打完整变量a=才可以,可能是特定格式才能识别吧。少用,容易出问题

一般不改变变量值的直接调用变量,一般改变变量值的需要取地址 &。

作业: