【C语言基础一文通】C语言基础看这一篇就够了
xlwin136 人工智能教学实践 2025年03月06日 08:13
【C语言基础一文通】C语言基础看这一篇就够了
以下是C语言基础知识的系统总结,结合代码示例和关键概念说明,帮助巩固C语言基础的核心内容:
一、变量与常量
1. 变量
-
定义:程序运行期间可修改的数据存储单元。
- 声明与初始化:
int age = 25; // 声明并初始化整型变量 double price = 99.99; // 声明双精度浮点变量
-
命名规则:
-
以字母或下划线开头,由字母、数字、下划线组成。
-
区分大小写(
Age
≠age
)。
-
2. 常量
-
定义:程序运行期间不可修改的值。
- 定义方式:
#define PI 3.14159 // 预处理常量(无类型) const int MAX = 100; // 常变量(有类型检查)
二、基本数据类型
数据类型 |
关键字 |
字节数 |
格式符 |
示例值 |
---|---|---|---|---|
整型 |
int |
4 |
%d |
42 |
短整型 |
short |
2 |
%hd |
32767 |
长整型 |
long |
4/8 |
%ld |
100000L |
单精度浮点 |
float |
4 |
%f |
3.14f |
双精度浮点 |
double |
8 |
%lf |
2.71828 |
字符型 |
char |
1 |
%c |
'A' |
三、运算符与表达式
1. 算术运算符
int a = 10, b = 3;
printf("%d\n", a + b); // 13
printf("%d\n", a % b); // 1(取余)
printf("%f\n", (double)a / b); // 3.333333(强制类型转换)
2. 赋值运算符
int x = 5;
x += 3; // 等价于 x = x + 3 → x=8
x *= 2; // x=16
3. 逗号运算符
int a = (3, 5, 7); // a=7(取最后一个表达式的值)
4. sizeof运算符
printf("int大小: %zu字节\n", sizeof(int)); // 输出4(32/64位系统)
5. 位运算符
unsigned char c = 0b1010; // 二进制表示
c = c << 2; // 左移2位 → 0b101000 (40)
c = c & 0b1111; // 按位与 → 0b1000 (8)
四、类型转换
1. 隐式转换(自动转换)
- 规则:小类型→大类型(如
int
→double
)。int a = 5; double b = 2.5; double c = a + b; // a自动转为double,结果7.5
2. 显式转换(强制转换)
double pi = 3.14159;
int approx = (int)pi; // approx=3(直接截断小数)
五、经典算法示例
1. 交换两个变量值
int a = 5, b = 10;
int temp = a; // 使用临时变量
a = b;
b = temp;
printf("a=%d, b=%d\n", a, b); // a=10, b=5
2. 十进制转二进制(手动实现)
void dec2bin(int n) {
if (n > 1) dec2bin(n / 2); // 递归调用
printf("%d", n % 2); // 逆序打印余数
}
dec2bin(10); // 输出1010
六、数制与转换
进制 |
前缀 |
示例 |
转换函数 |
---|---|---|---|
十进制 |
无 |
42 |
printf("%d", x) |
八进制 |
0 |
052 |
printf("%o", x) |
十六进制 |
0x |
0x2A |
printf("%x", x) |
七、重点总结
-
变量与常量:变量可修改,常量不可修改;优先使用
const
定义常变量。 -
运算符优先级:
()
>* / %
>+ -
>=
;不确定时加括号。 -
类型转换陷阱:
-
整数除法会丢弃小数:
5 / 2 = 2
,需强制转换:(double)5 / 2 = 2.5
。 -
浮点数比较需谨慎(用差值判断精度)。
-
八、学习建议
-
实践练习:尝试编写代码实现以下功能:
-
输入华氏温度,输出摄氏温度(公式:
C = 5/9*(F-32)
)。 -
计算并输出斐波那契数列前10项。
-
-
调试技巧:使用
printf
打印中间变量值,观察程序执行过程。
通过掌握这些基础知识,读者已具备编写简单C程序的能力,为后续学习函数、数组、指针等复杂内容打下坚实基础。
总结:
本单元重点介绍了变量与常量的应用、基本数据类型及其表示方法、算术运算符、赋值运算符、逗号运算符、sizeof运算符、位运算符及表达式、数制及数制转换、数据类型转换等知识点,另外通过例题展示了一些仅仅使用变量的经典算法,这些算法是学习更复杂算法的基础。通过本单元的学习,读者能够了解C语言程序的基础知识,为后续学习做好准备。