市面上有很多介绍C语言的书,但这是第一本将C语言以简洁而实用的方式介绍给读者的书籍。
用C语言进行编程不仅仅是在程序中使用正确的句法,编程的风格以及程序的调试在编写程序的过程中也占有相当大的篇幅,从而有助于程序的良好运行且易于维护。
本书不仅仅向你介绍编程的机制,同时也告诉你如何创建易于阅读、调试和更改的程序。
本书也强调了实用的原则。
例如在讨论C中运算优先级时,15种级别被归纳为下面两条原则:-先乘除,后加减;
-在所有该加括号的地方都加上括号第三版除介绍UNIX上的编程工具之外,还介绍了流行的Windows系统上集成开发环境(IntegratedDevelopmentEnvironments)。
第一部分基础11第一章什么是C13编程原理14C语言简史17C如何工作17如何学习C19第二章编程基础21程序从概念到运行21编写一个真正的程序22使用命令行编译器编程23使用集成开发环境(IDE)编程27获取UNIX帮助45获取集成开发环境帮助45集成开发环境菜单45编程练习48第三章风格49基础编码练习54编码盲从56缩进与编码格式56清晰57简明58小结59第四章基本定义与表达式60程序要素60程序的基本结构61简单表达式62变量和存储64变量定义65整型66赋值语句66printf函数68浮点型70浮点数与整数的除法运算70字符73答案74编程练习75第五章数组、修饰符与读取数字76数组76串78读取串81多维数组84读取数字86变量初始化88整型90浮点型92常量说明93十六进制与八进制常量93快捷运算符94副作用95++x或x++96更多的副作用问题97答案98编程练习99第六章条件和控制语句101if语句101else语句102怎样避免误用strcmp函数104循环语句104While语句105break语句107continue语句108随处赋值的副作用109答案111编程练习111第七章程序设计过程113设置115程序规范116代码设计116原型118Makefile119测试123调试124维护126修改126代码分析127注释程序128使用调试器128用文本编辑器浏览128增加注释128编程练习131第二部分简单程序设计133第八章更多的控制语句135for语句135switch语句139switch,break和continue145答案145编程练习147第九章变量作用域和函数149作用域和类149函数153无参数的函数157结构化程序设计158递归160答案161编程练习162第十章C预处理器163*define语句163条件编译170包含文件173带参数的宏174高级特征176小结176答案177编程练习180第十一章位运算181位运算符183与运算符(&)183按位或(\)186按位异或(^)187非运算符(~)187左移与右移运算符(<>)188设置、清除和检测位190位图图形194答案200编程练习201第十二章高级类型202结构202联合205typedef207枚举类型209强制类型转换210位字段或紧缩结构210结构数组212小结213编程练习213第十三章简单指针215函数自变量指针220常量指针222指针和数组224如何不使用指针229用指针分隔字符串231指针和结构235命令行参数236编程练习242答案242第十四章文件输入/输出245转换程序249二进制和ASCII码文件252行尾难题253二进制I/O255缓冲问题257非缓冲I/O258设计文件格式264答案266编程练习267第十五章调试和优化268调试268交互调试器280调试一个二分查找程序285实时运行错误297公开
2023/11/8 22:50:27 20.09MB C语言 编程
1
递归下降语法分析程序要求:忽略注释;
有出错恢复处理功能;
显示错误格式“第xx行出现xxx错误”
1
课程大纲每节课资料提前5天发放第1章本节大纲”破解“算法面试"Hack"theAlgorithmInterview算法面试究竟考什么史上最全的算法面试考点大全2013-2018面试难度变化如何在最有效率的准备算法面试如何在不押题的情况下更有信息的去面试2018/6/24上午9:30:00第2章本节大纲二分与LogN算法BinarySearch&LogNAlgorithm二分法三重境界二分位置之满足条件的第一次-BinarySearchonIndex-OOXX二分位置之保留一半-BinarSearchonIndex-Halfhalf二分答案-BinarySearchonResult学习BinarySearch的通用模板,不再死循环讲解SearchinRotatedSortedArray等10道高频二分搜索题2018/7/1上午9:30:00第3章本节大纲为面试而生的双指针算法TwoPointersAlgorithmTwoSum问题及他的各种扩展TwoSum&Follow-ups其他高频的双指针问题2018/7/2上午9:30:00第4章本节大纲宽度优先搜索和拓扑排序BFS&TopologicalSorting二叉树上的宽搜BFSinBinaryTree二叉树的序列化问题BinaryTreeSerialization图上的宽搜BFSinGraph拓扑排序TopologicalSorting棋盘上的宽搜BFSinChessboard2018/7/15上午9:30:00第5章本节大纲基于树的深度优先搜索Tree-basedDFS二叉树的深度优先遍历BinaryTreeDFSTraversal先序/中序/后序Preorder/inorder/postorder二叉树中的分治算法Divide&ConquerDFS模板IntroduceDFSTemplate二叉树高频面试问题递归三要素遍历算法与分治算法对比TraversevsDivideConquer2018/7/16上午9:30:00第6章本节大纲基于组合的深度优先搜索Combination-basedDFS组合类深搜CombinationDFS排列类深搜PermutationDFS图上的深搜GraphDFS非递归的深搜实现方法Non-Recursion2018/7/22上午9:30:00第7章本节大纲基于排列、图的深度优先搜索Permutation/GraphbasedDFSTBD2018/7/23上午9:30:00第8章本节大纲数据结构-栈,队列,哈希表与堆Stack,Queue,Hash&Heap哈希表Hash常用的哈希库的区别HashSetvsHashMapvsHashTable哈希表的实现原理BasicHashKnowledge哈希函数HashFunction冲突的解决方法Collision开散列OpenHashing闭散列ClosedHashing哈希扩容Rehashing哈希表高频面试题HighFrequentlyAskedHashQuestions堆堆的基本原理BasicHeapKnowledge优先队列与堆的联系和区别PriorityQueuevsHeap堆的高频面试题HighFrequentlyAskedHeapQuestions堆的代替品:TreeMap2018/7/29上午9:30:00第9章本节大纲数据结构-区间、数组、矩阵与树状数组Interval,Array,Matrix&BinaryIndexedTree数组Array子数组及相关面试题Subarray&RelatedQuestions其他高频数组问题HighFrequentAskedArrayQuestionsTBD2018/7/30上午9:30:00课程更新日志
2023/10/26 20:27:35 2.24MB 编程 算法 九章算法 动态规划
1
基于注意力的递归时间受限玻尔兹曼机用于雷达高分辨率测距剖面序列识别
2023/10/24 4:38:28 2.62MB 研究论文
1
试证明一个绕原点的旋转变换和一个均匀比例变换是可交换的变换对。
证明:T1=T2,所以一个绕原点的旋转变换和一个均匀比例变换是可交换的变换对。
五、(本题10分)利用中点Bresenham画圆算法的原理推导第一象限从y=0到x=y圆弧段的扫描转换算法(设半径为R,要求写清原理、误差函数、递推公式)。
2023/10/24 4:12:06 556KB 计算机图形学 试卷
1
编译原理课程设计代码赋值语句的递归下降翻译程序设计编译原理课程设计代码赋值语句的递归下降翻译程序设计编译原理课程设计代码赋值语句的递归下降翻译程序设计
1
这是一个递归下降分析程序,实现对词法分析程序所提供的单词序列的语法检查和结构分析。
利用C语言编制递归下降分析程序,并对简单语言进行语法分析。
1
关于消除左递归的文法及代码
2023/10/17 22:38:03 10.78MB 消除左递归
1
c语言编写的递归下降语法分析器的算法,测试成功可以直接跑代码
2023/10/12 5:38:17 13KB 递归下降语法
1
本资源经过数模之后总结的一些经典代码。
其中函括1、中国大学生数学建模竞赛题解2、演示程序3、微积分和微分方程4、图形5、随机模拟和统计分析6、数学规划7、数据拟合8、离散优化9、方程求根10、时间序列分析以及递推关系的作图分析等
2023/10/10 23:55:43 153KB MATLAB 经典代码 大全
1
共 403 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡