当前位置:首页 > > 充电吧
[导读]1.遐想经过快两个礼拜的努力,校ACM已经AC了84题了。我很爱很爱你,84!在今天这个特殊的日子里我愿意为你停留,但是我却不能一直为你停留,这就是现实,我必须用力奔跑,将来才有勇气有资格去面对你。接

1.遐想

经过快两个礼拜的努力,校ACM已经AC了84题了。我很爱很爱你,84!在今天这个特殊的日子里我愿意为你停留,但是我却不能一直为你停留,这就是现实,我必须用力奔跑,将来才有勇气有资格去面对你。接下来我要疯狂继续AC,进阶人生的地位。恍然间已经22岁,已经 2 年了。路一直在,人已走远!
2.排序 

杭电排序系列

自己按照杭电的这个系列做下来,发现大都是水题,拿来练信心的。排序有快速排序,归并排序,堆排序,基数排序,冒泡排序,选择排序...总共八大排序。


3.搜索 在校ACM1001上就有用搜索来做题的(校ACM1001)。在hdu1010上,用 剪枝 + 深度优先搜索(递归实现)比较简单的。

4.c++各种输入的区别 输入操作的原理:程序的输入都建有一个缓冲区,即输入缓冲区。一次输入过程是这样的,当一次键盘输入结束时会将输入的数据存入输入缓冲区,而cin函数直接从输入缓冲区中取数据。正因为cin函数是直接从缓冲区取数据的,所以有时候当缓冲区中有残留数据时,cin函数会直接取得这些残留数据而不会请求键盘输入。

问题描述一:(分析scanf()和getchar()读取字符) scanf()和getchar()函数是从输入流缓冲区中读取值的,而并非从键盘(也就是终端)缓冲区读取。 而读取时遇到回车(n)而结束的,这个n会一起读入输入流缓冲区的。
问题描述二:(分析scanf()和gets()读取字符串) 用scanf来读取一个字符串时,scanf()函数取数据是遇到回车、空格、TAB就会停止。 字符串中是不可以出现空格的,一旦出现空格,后面的数据就会舍弃残留在缓冲区中。 另外一个函数是可以接受空格的,那就是gets()。
问题描述三:cin<<

该操作符是根据后面变量的类型读取数据。

输入结束条件:遇到Enter、Space、Tab键。

对结束符的处理:丢弃缓冲区中使得输入结束的结束符(Enter、Space、Tab) (有争议= - =)

总结:

第一:要注意不同的函数是否接受空格符、是否舍弃最后的回车符的问题!


读取字符时:

scanf()以Space、Enter、Tab结束一次输入,不会舍弃最后的回车符(即回车符会残留在缓冲区中);
getchar()以Enter结束输入,也不会舍弃最后的回车符;

读取字符串时:
scanf()以Space、Enter、Tab结束一次输入
gets()以Enter结束输入(空格不结束),接受空格,会舍弃最后的回车符!


第二:为了避免出现上述问题,必须要清空缓冲区的残留数据,可以用以下的方法解决:
C语言里提供了函数清空缓冲区,只要在读数据之前先清空缓冲区就没问题了! 这个函数是fflush(stdin)。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

如何记录呢?此次福建行,就来和大家分享一下记录的技巧。摄影初学者都有一个惯性思维,就是认为看到好的风景按下快门即可,于是导致每到一处地方就猛按快门,但是最后能拿出手的几乎没有,拍了一年半载甚至更长时间,摄影水平还是停留在...

关键字: 记录 摄影 初学者

其实在 c++语言里面const修饰的才算是一个真正的常量,在 c 语言中 const 可以说是个“冒牌货”。为什么会这样?其实是 c++ 编译器对 const 进行了加强,当 c++ 编译器遇到常量声明时,不会像 c...

关键字: c++ C语言 const

返回函数的引用去初始化一个新的引用这个和前面一样,都是不会产生副本,但是现在是用返回值去初始化一个引用声明c,也就是说这时候变成了变量temp的别名,在c的生命周期内temp是一直有效的,这样做完全可以。

关键字: c++ 返回值 引用声明

C++是一种面向对象的高级程序设计语言,是C语言的超集。

关键字: c++ C语言

摘 要:通过加速度传感器对快递包裹在运输过程中所受的物理冲击,包括撞击、颠簸、翻转等进行捕捉,在此过程中, 将模拟信号转换为数字信号,并与器件中已存数据进行比对,若冲击强度超过预设值,我们即认为此次物理冲击会对物品造成潜...

关键字: 物理冲击 捕捉 预设值 记录

分析:这是Adobe 公司2007 年校园招聘的最新笔试题。这道题除了考察应聘者的C++ 基本功底外,还能考察反应能力,是一道很好的题目。 在Java 中定义了关键字final ,被final 修饰的

关键字: c++ class

泛型算法中的定制操作很多算法都会比较输入序列中的元素,通过定制比较动作,可以控制算法按照编程者的意图工作。本文以string排序为例进行说明,首先是缺省的排序动作: vector v{"This","

关键字: c++

为什么是lambda?讲了这么多天的lambda表达式,有一个很基本的问题没有回答:为什么叫lambda表达式呢?首先这个lambda就是罗马字母λ,lambda表达式即λ表达式。数学上有一个概念叫λ

关键字: c++

        假设我们有个函数用来揭示处理程序的优先权,另一个函数用来在某动态分配所得的Widget 上进行某些带有优先权的处理:int priority () ; void processWi

关键字: c++ effective

判断链表中是否有环最经典的方法就是快慢指针,同时也是面试官大多想要得到的答案。       快指针pf(f就是fast的缩写)每次移动2个节点,慢指针ps(s为slow的缩写)每次移动1个节点,如果快

关键字: c++ 链表 快慢指针
关闭