1. 基本功 《深入理解计算机系统》配套学习网站:https://fengmuzi2003.gitbook.io/csapp3e/linux 命令网站: https://man.linuxde.net/《Linux指令从初学到精通》 https://book.51cto.com/art/201107 Read More
3.6 do-while 循环编写 itoa(), 使用 do-while 比较合适 void reverse(char *s, int n) { for (int ix = 0, jx = n -1; ix < jx; ix++, jx--) { int tmp = s[ix]; s[ix] = Read More
练习 2-2 使用逻辑运算符修改 for循环 原来的循环 for (int i = 0; i < limit-1 && (c=getchar()) != '\n' && c != EOF; i++) s[i] = c; 答案中的循环 int flag = 0, i = 0; while (flag) Read More
函数名称 说明 int atoi(const char *str) 将字符串转化成整型,如果无效,就返回0 int rand(void) 返回一个范围在 0 到 RAND_MAX 之间的伪随机数。 void srand(unsigned int seed) 该函数设置seed数值,对应 rand 使 Read More
函数名称 说明 double sqrt(double x) 返回x的平方根 double pow(double x, double y) 返回x的y次幂 Read More
函数声明 说明 int tolower(int c) 将大写字母转化成小写字母 int toupper(int c) 将小写字母转化成大写字母 int islower(int c) 检查字母是否是小写字母 int isupper(int c) 检查字母是否是大写字母 int isdigit(int Read More
函数要有高效性和易用性 4.1 函数的基本内容 查看strindex()的实现,该功能和strstr()类似, 都是查找子串的位置 int strindex(char s[], char t[]) { int idx, i, j; for (idx = 0; s[idx] != '\0'; idx+ Read More
1. 动态规划的题目可以从 回溯 推导得到。一般动态规划的题目 给定的数据个数很多,如果只用回溯会超时,此时可以通过数据存储已经计算的数据,即记忆化搜索。通过记忆化搜索,便于理解 dp表的简化 2. 对于0-1背包和完全背包,都可以简化二维dp表。以0-1背包举例,假设二维dp表的横坐标是tgt(其 Read More
1. scanf()原型 int scanf(const char *format) char arr[100] = {}; scanf("%s", arr); // 遇到空格,输入就结束了 scanf("%[^\n]\n"); // 遇到空格不结束,遇到换行才结束; 并且把'\n'去掉,不会影响后 Read More
1.5 字符输入和输出 如下两个输入和输出函数,是基础版本,它们可以以扩充出很多版本int getchar(void)int putchar(int char) 1.5.3 行统计 #include <stdio.h> void main() { int ch, nl = 0; while ((ch Read More
1.keil 软件编译后,会提示 如下信息,需要了解确认,避免自己程序占用RAM或ROM太大 Program Size: data=9.0 xdata=1024 code=17 网上查阅 data xdata code 区域的大小,已经存放的内容。data 一般是RAM的低128B地址空间,xdat Read More