程序 = 数据结构 + 算法
本文主要用来应付我的数据结构课程期末考试,所以写得比较粗糙,很多细节都忽略掉了,还请各位 dalao 谅解 🥰。
以后如果有时间我可能会新建页面具体分析相关内容,所以可以把本文看作一篇索引(一个页表?)。
索引
当前已更新索引,原内容拆分为五个部分
C语言补充知识
typedef
typedef可以给变量起一个别名,例如:
1typedef int ElemType
此后可以用ElemType代替int。
输入输出函数
一般而言,C语言的输入输出函数比cin,cout更高效。
1int num;
2float fnum;
3double dnum;
4char str[10];
5
6int main() {
7 // 输入
8 scanf("%d", &num); // 整数
9 scanf("%f", &fnum); // float类型浮点数
10 scanf("%lf", &dnum); // double类型浮点数
11 scanf("%s", str); // 字符串
12
13 //输出
14 printf("%d", num);
15 printf("%f", fnum);
16
17 return 0;
18}
C语言的格式符:
| 格式符 | 含义 | 示例代码 | 输出示例 |
|---|---|---|---|
%d |
十进制整数 | printf("%d", 123); |
123 |
%f |
浮点数 | printf("%f", 3.14); |
3.140000 |
%c |
字符 | printf("%c", 'A'); |
A |
%s |
字符串 | printf("%s", "hello"); |
hello |
%x |
十六进制整数(小写) | printf("%x", 255); |
ff |
%X |
十六进制整数(大写) | printf("%X", 255); |
FF |
%o |
八进制整数 | printf("%o", 8); |
10 |
%p |
指针地址 | printf("%p", ptr); |
0x7ffeefbff5a0 |
%e |
科学计数法(小写e) | printf("%e", 1234.5); |
1.234500e+03 |
%E |
科学计数法(大写E) | printf("%E", 1234.5); |
1.234500E+03 |
%g |
自动选 %f 或 %e(更短) |
printf("%g", 0.00001); |
1e-05 |
%u |
无符号十进制整数 | printf("%u", -1); |
4294967295 |
动态内存分配
| 函数 | 作用 | 返回 |
|---|---|---|
malloc |
申请未初始化的连续字节 | void *(成功)或 NULL(失败) |
calloc |
申请已清零的连续元素 | 同上 |
realloc |
扩容/缩容已申请的块 | 同上 |
free |
归还内存 | void |
申请要判空,用完必释放,扩容用临时,释放后置 NULL。