胡凡-01

 

胡凡
  本书在第2章对C语言的语法进行了详细的入门讲解,并在其中融入了部分C+的特性。
  第3-5章是  入门部分。
  第3章     初步训练读者最基本的编写代码能力;
  第4章对   常用介绍,内容重要;
  第5章是      数学问题,5.7节和5.8节的后半部分内容相对没有那么容易,读者可以选择性阅读。
  第6章    C+标准模板库(STL)中的常用容器和algorithm头文件下的常用函数,通过学习本章,读者可以节省许多写代码的时间,把注意力更多地放在解决问题上。
  第7~12章是进阶部分。
  第7章介绍了  栈、队列和链表,
  第8章介绍了   深度优先搜索广度优先搜索,它们是树和图算法学习的基础
  第9章和第10章分别讲解了  树和图的相关算法,它们是数据结构中非常重要的内容,在很多考试中也经常会出现,需要读者特别关注;
  第11章介绍了动态规划算法的几个经典模型,并进行了相应的总结;
  第12章对字符串hash和KMP算法进行了探讨。
  第13章是在前面章节的基础上额外增加的内容,需要读者花一些时间来掌握。
  对于PAT乙级考试,前7章内容已经基本够用:对于PAT甲级考试,本书的太部分内容都要堂握(冷门考点会在“本章二维码”中给出);对于CCF的CSP认证,本书能覆盖竞赛内容以外的考点(最后一题偶尔会涉及ACM-ICPC的内容,超出了本书范围);对于考研初试数据结构科目,本书能帮助读者更好地理解各种数据结构与算法。另外,本书还有一本配套习题集——《算法笔记上机训练实战指南》,书中给出了PAT乙级前50题、甲级前107题的详细题解。若读者想要对知识点的熟练度有进一步的提升,推荐同时使用本书的配套习题集(最新的考题会在本书的二维码中添加更新)。习题集的题目顺序是按本书的章节顺序编排的,并配有十分详细的题解,以便读者更有效地进行针对性训练。推荐使用“阅读一节本书的内容,然后做一节习题集对应小节的题目”的训练方式。

  1.3 在线评测系统 OJ:Online Judge(在线评测系统)
  软件推荐:Dev-C++  https://sourceforge.net/projects/orwelldevcpp/

胡凡-01_第1张图片

  本书的例题与练习题来自PAT,codeup。
  (1)PAT PAT的全称为Programming Ability Test,是考察计算机程序设计能力的一个考试,目前分为乙级(Basic)、甲级(Advanced)和顶级(Top)三个难度层次,其中顶级将涉及大量ACM-ICPC竞赛的考点,报考的人数也相对较少。本书能够覆盖乙级和甲级的考试知识点,并且书中有很多例题都来自PAT甲、乙级的真题。
本书中来自乙级的题目将以B开头,例如B1003表示乙级的题号为1003的题目。PAT乙级真题题库:http://www.patest.cn/contests/pat-b-practise PAT甲级真题地址:http://www.patest.cn/contests/pat-a-practise 对于来自PAT甲、乙级的题目,只需要在网站上面注册一个账号即可提交,例如对B1001来说,在阅读完题目并写出相应的代码后,只需要单击最下方的“提交代码”,接着选择代码对应的语言(例如C或者C++代码的提交都可以选择“C++(g++4.7.2)”这一项),然后把代码粘贴在编辑框内,单击“提交代码”即可,稍等片刻刷新页面即可得到程序评测的结果。
注意:PAT的评测方式为“单点测试”,即代码只需要能够处理一组数据的输入即可,后台会多次运行代码来测试不同的数据,然后对每组数据都返回相应的结果。“单点测试”的具体写法见

  (2)codeup codeup是一个有着很多题目的题库,当然它也是一个在线评测系统
对codeup的题目而言,评测方式为“多点测试”(除了第2章的C语言练习题外),也就是说,后台只会运行代码一次来测试不同的数据,只有当所有数据都输出正确的结果时才会让程序通过,只要有一组数据错误,就会返回对应的错误类型。“多点测试”的具体写法见2.10.2。
除了PAT和codeup之外,还有很多优秀的在线评测系统,但是大多数都是侧重于竞赛的,因此如果不是算法竞赛的话,一般不需要去它们上面做题。下面是几个较知名OJ的地址:
  POJ :     http://poj.org/
  HDOJ:   http://acm.hdu.edu.cn/
  ZOJ:      http://acm.zju.edu.cn/
  CodeForces:http://codeforces.com/
  ACdream:  http://acdream.info/

第2章
  2.1.1
  1.速度cin和cout可以不指定输入输出格式比较方便,但是cin和cout 消耗的时间比scanf和printf多得多。
  2.保存.cpp文件(C语言的文件扩展名为c,C++的文件扩展名.cpp)。

胡凡-01_第2张图片

  3. 程序:头文件和主函数。
     1.头文件。#include:头文件。其中,stdio.h是标准输入输出库,如果在程序中需要输入输出,就需要加上这个头文件。stdio的全称是standard input output,h就是head的缩写,.h是头文件的文件格式。math.h 负责一些数学函数,string.h负责跟字符串有关的函数。在C++的标准中,stdio.h更推荐使用等价写法:cstdio,也就是在前面加一个c,然后去掉h即可。
    2.主函数。  主函数就是一个程序的入口位置。

胡凡-01_第3张图片

  4. 读入和写出。 scanf("%d%d",&a,&b);    printf("%d",a+b)  

scanf("%d%d",&a,&b);    scanf读入效据,语句以%d的格式输入a和b,%d是int 型的输入输出示识
printf("%d",a+b)        printf用来输出数据,这条语句计算a+b并以%d格式输出。

  2.1.2 变量类型

    (1)int 整型     %d

                        胡凡-01_第4张图片

    (2)double型     %f    

                    胡凡-01_第5张图片

    (3)字符型     %c

                      胡凡-01_第6张图片 

                      胡凡-01_第7张图片

   (4)字符串常量:%s

                    胡凡-01_第8张图片

                      胡凡-01_第9张图片

   2.1.3 强制类型转换

胡凡-01_第10张图片

  2.1.4 符号常量和const常量(两种方式)  #define pi =3.14胡凡-01_第11张图片

 --------------------------------第二种方式---求周长---------------------

胡凡-01_第12张图片

  2.1.5 运算符

  (1) 算术运算符 (+  -   *  / (取整)  %(取余)   ++   --(自增,自减))

    自增运算符:i++或++i。区别在于i++是先使用i再将i加1,而++i则是先将i加1再使用i。

  (2)关系运算符

胡凡-01_第13张图片

  (3)逻辑运算符

胡凡-01_第14张图片

  (4)条件运算符  三目运算符: A ? B:C          如 a > b ? 7 :11   

  (5)位运算

胡凡-01_第15张图片

  2.2 顺序结构

  2.2.1 赋值表达式

  2.2.2 scanf、printf ===>(1.除了字符串或char数组整个输入的情况不加&  2.scanf的%c格式可以读取空格跟换行)

胡凡-01_第16张图片

%md          右对齐输出,不足的位置用空格代替  如printf("%5d\n",a); (  123)
%0md         右对齐输出,不足的位置用0代替    如printf("%05d\n",a);(00123) 
%.mf         保留多少位小数               printf('%.4f\n',d1)  (12.3456)

  2.2.3 getchar()   putchar()  输入输出单个字符

胡凡-01_第17张图片

  2.2.4 注释        /**/ 多行;    // 单行

  2.2.5 typedef  能够给复杂的数据类型起一个别名

胡凡-01_第18张图片

  2.2.6 常用math函数

  (1)fabs(double x)取绝对值

胡凡-01_第19张图片

  (2)floor(double x)和ceil(double x)向上下取整

胡凡-01_第20张图片

  (3)pow(double x,double p)   指数函数

胡凡-01_第21张图片

  (4) sqrt(double x)  算术平凡根

胡凡-01_第22张图片

  (5)log(double x)  以自然为底的对数

胡凡-01_第23张图片

  (7)asin(double x)、acos(double x)atan(double x) 反正弦值,反余弦值,反正切值

胡凡-01_第24张图片

  (8)round(double x) 四舍五入

胡凡-01_第25张图片

 

转载于:https://www.cnblogs.com/chengxiaofeng/p/10736675.html

你可能感兴趣的:(c/c++,数据结构与算法)