C语言是一门面向过程的通用编程语言,广泛应用于系统开发、嵌入式开发等领域,掌握其基础知识是进入编程领域的重要一步。下面来详细介绍C语言入门需要掌握的核心内容。

C语言基础数据类型
C语言中常用的基本数据类型包括整型、浮点型、字符型,不同的类型占用的内存空间和取值范围不同,具体可以参考下表:
| 数据类型 | 关键字 | 占用内存(通常情况) | 取值范围 |
|---|---|---|---|
| 整型 | int | 4字节 | -2147483648 ~ 2147483647 |
| 单精度浮点型 | float | 4字节 | 约±3.4e-38 ~ ±3.4e38 |
| 双精度浮点型 | double | 8字节 | 约±1.7e-308 ~ ±1.7e308 |
| 字符型 | char | 1字节 | -128 ~ 127 |
变量与常量
变量是程序中用来存储数据的容器,定义变量时需要指定数据类型,变量的值可以被修改。常量则是固定不变的值,比如字面量、用#define定义的宏常量、用const修饰的常变量。
下面是变量和常量的定义示例:
#include <stdio.h>
#define MAX_NUM 100 // 宏常量
int main() {
int age = 20; // 整型变量
const float PI = 3.14; // 常变量,值不能被修改
char grade = 'A'; // 字符型变量
printf("年龄:%dn", age);
printf("最大数值:%dn", MAX_NUM);
printf("圆周率:%.2fn", PI);
printf("等级:%cn", grade);
return 0;
}
运算符
C语言中的运算符分为算术运算符、关系运算符、逻辑运算符、赋值运算符等几类,下面是常用运算符的说明:
- 算术运算符:+(加)、-(减)、*(乘)、/(除)、%(取余)
- 关系运算符:>(大于)、<(小于)、==(等于)、!=(不等于)、>=(大于等于)、<=(小于等于)
- 逻辑运算符:&&(逻辑与)、||(逻辑或)、!(逻辑非)
- 赋值运算符:=(赋值)、+=(加后赋值)、-=(减后赋值)等
运算符的优先级会影响表达式的计算结果,算术运算符的优先级高于关系运算符,关系运算符高于逻辑运算符,赋值运算符的优先级最低。
流程控制语句
分支语句
分支语句用来根据条件执行不同的代码块,常用的有if语句和switch语句。if语句可以判断单个或多个条件,switch语句适合判断单个变量的多个取值情况。
#include <stdio.h>
int main() {
int score = 85;
// if分支示例
if (score >= 90) {
printf("优秀n");
} else if (score >= 60) {
printf("及格n");
} else {
printf("不及格n");
}
// switch分支示例
int day = 3;
switch (day) {
case 1:
printf("星期一n");
break;
case 2:
printf("星期二n");
break;
case 3:
printf("星期三n");
break;
default:
printf("其他日期n");
}
return 0;
}
循环语句
循环语句用来重复执行某段代码,常用的有for循环、while循环、do...while循环。for循环适合已知循环次数的场景,while循环适合未知循环次数、根据条件判断的场景,do...while循环至少会执行一次循环体。
#include <stdio.h>
int main() {
// for循环打印1到5
for (int i = 1; i <= 5; i++) {
printf("%d ", i);
}
printf("n");
// while循环计算1到100的和
int sum = 0;
int j = 1;
while (j <= 100) {
sum += j;
j++;
}
printf("1到100的和:%dn", sum);
return 0;
}
函数
函数是完成特定功能的代码块,可以提高代码的复用性。C语言程序至少有一个main函数,也就是主函数,是程序的入口。函数分为库函数和自定义函数,库函数是系统提供的可以直接调用的函数,比如printf、scanf,自定义函数是开发者自己编写的函数。
下面是一个自定义函数的示例,实现两个数相加的功能:
#include <stdio.h>
// 自定义加法函数,返回两个数之和
int add(int a, int b) {
return a + b;
}
int main() {
int num1 = 10, num2 = 20;
int result = add(num1, num2);
printf("%d + %d = %dn", num1, num2, result);
return 0;
}
指针基础
指针是C语言的核心知识点之一,指针变量用来存储其他变量的内存地址。通过指针可以直接操作内存,提高程序的运行效率。定义指针时需要在变量名前加*,使用&运算符可以获取变量的地址,使用*运算符可以获取指针指向地址的值。
#include <stdio.h>
int main() {
int num = 10;
int *p = # // 定义指针p,存储num的地址
printf("num的值:%dn", num);
printf("num的地址:%pn", &num);
printf("指针p存储的地址:%pn", p);
printf("指针p指向的值:%dn", *p);
*p = 20; // 通过指针修改num的值
printf("修改后num的值:%dn", num);
return 0;
}