C++c语言经典编程282例!!!!!

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
您的访问请求被拒绝 403 Forbidden - ITeye技术社区
您的访问请求被拒绝
亲爱的会员,您的IP地址所在网段被ITeye拒绝服务,这可能是以下两种情况导致:
一、您所在的网段内有网络爬虫大量抓取ITeye网页,为保证其他人流畅的访问ITeye,该网段被ITeye拒绝
二、您通过某个代理服务器访问ITeye网站,该代理服务器被网络爬虫利用,大量抓取ITeye网页
请您点击按钮解除封锁&& & 我从去年11月份开始自学C++(本人现在做C#开发),现在把我这10来个月学习体会写出来和大家分享。& & 1。关于要不要学习C++?(结论:要学,一定要学!)& & 如今在网上很多为要不要学C++争的不可开交,因为现在JAVA,C#,。NET都炒的很火,特别是JAVA,大有炸平庐山,停止地球转动之势。用林锐同志的话说,其实JAVA只是C++外甥,跑到舅舅身上撒了一泡尿而已。首先,我们从JAVA 的来历上来说,JAVA的设计初衷是用来给家用电器设计程序使用的,最初设计者想用C++,但觉得C++太复杂,就在C++的基础上做了一些简化,设计出了JAVA,它的设计思想是跨平台,所以必须先在运行平台上安装虚拟机,然后把源程序编译成中间语言在运行。这是一个优点,但我们说任意优点都是建立在缺点上的,JAVA的缺点就是运行速度慢,这对于某些系统来说是致命弱点。况且,JAVA中没有指针,对于制作系统软件来说,这更是无法饶恕的。再来看C++。C++产生于美国贝尔实验室,就是发明电话那个公司。设计初衷是用来改进C的开发效率,C是面向过程的语言,开发效率底,贝尔实验室有大量的C程序员,所以只要在开发效率上提高一点点,就可以节约数目庞大的成本。C是什么东西?是用来代替汇编编写操作系统的语言,用C++代替C,可以得出两个结论:第一,C++必须具有同C相当的执行速度;第二,C++必须比C具有较高的开发效率。执行速度方面,C++的设计者的思想就是在改进开发效率的同时尽量不增加C++的系统开销,当然有些地方非增加开销不可,也把开销控制在最小程度内。具非权威研究报告,C++比C的执行开销多出不到10%。开发效率方面,C++引进了面向对象机制,库机制,最大程度上实现了代码重用,这是软件开发人员的福音。C++在改进C的开发效率的同时,对C的缺陷做了一些修补。C的优点在C++中都得到了很好的保留,C的缺点在C++中都有了改进,有了更好的解决办法。而且,为了现有的大量C程序维护,C++还全面兼容了C。纵观当今程序语言家族,我觉得只有C可以C++相提并论,门当户对,其它语言都无法和C++相提并论。无论从什么角度来说,C++都算的上语言中的老大。& & 如今,网上有很多关于C++的争论,其实争论的人都是一些不知情的人,绝大多数是学校里的学生,我也曾经这样。在学校里的时候,不知道究竟应该学习什么,要是遇到好的老师还可以,遇到垃圾老师,垃圾学校那就更糟糕。如今,什么MCSE,CCNA,CIW等等认证漫天飞,把人搞的昏头昏脑,其实这都是认证公司炒的。社会上需要的是有真才实学的人,而不是需要证书。& & 我从大二开始学习编程,一开始学习VB,后来学习DELPHI,再后来学习C#,再后来学习C++,绕了个大圈子,最后还是绕回来了。而且重新学习数据结构,操作系统,学习软件工程,学习大学本科的基本课程,重新读外国的程序设计名著,而这些以前在大学是不屑一顾的。劝如今还在学校的师弟师妹们,努力学习C++。& & 2。为什么要学习学习C++& & 1)C++的程序员身价普遍较高,当然,前提是你必须是高手。我所在的城市,那些公司根本就招不到合格的C++程序员,一方面C++程序员要求高,学习C++的人越来越少了。当然,怀着这个目的,你或许永远无法成为C++高手,但我把这个原因放在最前面,可以给大家一个很明确的激励,当你接触C++后,发现从学习中获得乐趣比高的工资更有动力;& & 2)C++的优势是用来开发大型软件,从中可以学到很多优秀的软件设计思想。C++不是软件开发的首选工具,一般说来,大多人更愿意学习和使用VB,为什么,简单。简单的另一个方面是功能的局限。微软公司恨不的所有人都学VB,只有他一家会C++。容易上手,大家都喜欢学,喜欢用,很多人拿一本200页的书,看个两三个星期,就觉得自己是个程序员了,可以开发软件了,而且觉得做出来的东西很不错。当软件规模大到一定程度的时候,其他语言就越来越无法驾驭,这时C++的优势就体现出来了。你说做个成绩管理系统,人事查询系统,用VB,DELPHI,C#,JAVA都行,但是例如银行,电信,保险,操作系统,数据仓库,图形处理,编译系统,较底层的软件时,其他工具几乎是无法完成的。就说C++的指针,JAVA没有,在遇到数据量交大的数据排序,搜索,动态内存分配时,它就没有办法了。所以说,学习C++,不仅仅是学到的一种语言,还学习了优秀的软件设计思想。& & 3)学习C++可以学习到计算机底层的理论,即使不是用C++开发,对计算机运行机制的理解,对建制稳定的系统,对运用其他语言,也是一种促进。这一点,我是在学习过程中体会到的,所以,要说出个大家可以接受的理由来较难,大家以后学习就知道了。& & 3。怎样学习C++?& & 首先,我们必须承认,学习要讲究方法,有捷径。其次,我们还得承认,学习要下苦功,要务实。上小学的时候,书上有个故事,是关于王羲之学习书法的:王献之问他父亲王羲之,学习书法的秘诀是什么,他父亲把他带到后院,指着18口大水缸说,你如果把这里的水都写完了,就知道书法的秘诀在那里了。这个故事相信很多人都还记得。前几天看梁肇新(豪杰公司老板)的《高手箴言》,他说如果你如果愿意利用5年时间来成为高手,那么你只要两三年就会成为高手,如果你想一年成为高手,那么你5年也成不了高手。学习要切忌浮躁,要脚踏实地。我曾经很浮躁,结果一直呆在菜鸟堆里,当半年前我静下心来学习C++,才感觉有真正的进步。现在做WEB开发,虽然我从来不看WEB开发的书,但是我的同事遇到问题时,我经常能一下说出问题的所在。因为你看问题的角度变了。所以,学习C++的第一个方法是:切忌浮躁。其实学任何东西都一样,欲速则不达。从基本数据类型看起,从基本流程控制语句写起。& & 其次,教材很重要,要看经典名著
声明:该文章系网友上传分享,此内容仅代表网友个人经验或观点,不代表本网站立场和观点;若未进行原创声明,则表明该文章系转载自互联网;若该文章内容涉嫌侵权,请及时向
上一篇:下一篇:
相关经验教程
论文写作技巧&&/&&&&/&&&&/&&&&/&&
【例3.12】用下面公式求&的近似值。&/4&1-1/3+1/5-1/7+&直到最后一项的绝对值小于10-7为止。根据给定的算法很容易编写程序如下:
#include &iostream&
#include &iomanip&
#include &cmath&
int main( )
double n=1,t=1,pi=0;
while((fabs(t))&1e-7)
cout&&&pi=&&&setiosflags(ios::fixed)&&setprecision(6)&&pi&&
运行结果为
pi=3.141592
注意:不要把n定义为整型变量,否则在执行&t=s/n;&时,得到t的值为0(原因是两个整数相除)。
【例3.13】求Fibonacci数列前40个数。这个数列有如下特点:第1、2个数为1、1。从第3个数开始,每个数是其前面两个数之和。即:
& & F1=1& (n=1)
& & F2=1& (n=2)
& & Fn=Fn-1+Fn-2(n&3)
这是一个有趣的古典数学问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第3个月后每个月又生一对兔子,假设所有兔子都不死,问每个月的兔子总数为多少?
根据给出的每月兔子总数的关系,可编写程序如下:
#include &iostream&
#include &iomanip&
int main( )
long f1,f2;
for(i=1;i&=20;i++)
cout&&setw(12)&&f1&&setw(12)&&f2;
//设备输出字段宽度为12,每次输出两个数
if(i%2==0) cout&&
//每输出完4个数后换行,使每行输出4个数
//左边的f1代表第3个数,是第1&#65380;2个数之和
//左边的f2代表第4个数,是第2&#65380;3个数之和
【例3.14】找出100~200间的全部素数。编写程序如下:
#include &iostream&
#include &cmath&
#include &iomanip&
int main( )
int m,k,i,n=0;
//定义布尔变量prime
for(m=101;m&=200;m=m+2)
//判别m是否为素数,m由101变化到200,增量为2
prime=//循环开始时设prime为真,即先认为m为素数
k=int(sqrt(m)); //用k代表根号m的整数部分
for(i=2;i&=k;i++)
//此循环作用是将m被2~根号m除,检查是否能整除
if(m%i==0) //如果能整除,表示m不是素数
prime= //使prime变为假
//终止执行本循环
if (prime)//如果m为素数
cout&&setw(5)&&m;
//输出素数m,字段宽度为5
n=n+1; //n用来累计输出素数的个数
if(n%10==0) cout&&
//输出10个数后换行
cout&&//最后执行一次换行
【例3.15】译密码。
为使电文保密,往往按一定规律将电文转换成密码,收报人再按约定的规律将其译回原文。例如,可以按以下规律将电文变成密码:将字母A变成字母E,a变成e,即变成其后的第4个字母,W变成A,X变成B,Y变成C,Z变成D。见图3.20,字母按上述规律转换,非字母字符不变,如&Wonderful!&转换为&Asrhivjyp!&。
输入一行字符,要求输出其相应的密码。
程序如下:
#include &iostream&
int main( )
while ((c=getchar( ))!=&#39;\n&#39;)
if((c&=&#39;a&#39; && c&=&#39;z&#39;) || (c&=&#39;A&#39; && c&=&#39;Z&#39;))
if(c&&#39;Z&#39; && c&=&#39;Z&#39;+4 || c&&#39;z&#39;)
运行结果如下:
I am going to Beijing!L
M eq ksmrk xs Fimnmrk!
while语句中括号内的表达式有3个作用:
从键盘读入一个字符,这是用getchar函数实现的;
将读入的字符赋给字符变量c;
判别这个字符是否为&#39;\n&#39;(即换行符)。如果是换行符就执行while语句中的复合语句(即花括号内的语句),对输入的非换行符的字符进行转换处理。
按前面分析的思路对输入的字符进行处理,有一点请读者注意,内嵌的if语句不能写成:
& & if (c&&#39;Z&#39;|| c&&#39;z&#39;)& c=c-26;
因为所有小写字母都满足&c&&#39;Z&#39;&条件,从而也执行&c=c-26;&语句,这就会出错。因此必须限制其范围为&c&&#39;Z&#39; && c&=&#39;Z&#39;+4&,即原字母为&#39;W&#39;到&#39;Z&#39;,在此范围以外的不是原大写字母W~Z,不应按此规律转换。
请考虑:为什么对小写字母不按此处理,即写成c&&#39;z&#39; && c&=&#39;z&#39;+4而只须写成&c&&#39;z&#39;&即可。【图文】C++程序设计_(谭浩强超级完整版)绝对完整!![1]_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
C++程序设计_(谭浩强超级完整版)绝对完整!![1]
上传于||暂无简介
大小:17.76MB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢& C++编程开发学习的50条建议
C++编程开发学习的50条建议
& & & &每个从事开发的朋友相信都能给后来者一些建议,但是真正为此进行大致总结的很少。本文就给出了网上流传的对C++编程开发学习的50条建议,总结的还是相当不错的,编程学习者(不仅限于C++学习者)如果真的理解了这些建议,相信能够在学习时准确的抓住侧重点,少走弯路。下面列出这50条建议:&& & & &1、把C++当成一门新的语言学习(和C没啥关系!)。& & & &2、看《Thinking In C++》,不要看《C++编程思想》。& & & &3、看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看。&& & & &4、不要被VC、BCB、BC、MC、TC等词汇所迷惑--他们都是集成开发环境,而我们要学的是一门语言。&& & & &5、不要放过任何一个看上去很简单的小编程问题&&他们往往并不那么简单,或者可以引伸出很多知识点。& & & &6、会用,并不说明你会C++。& & & &7、学class并不难,template、STL、generic programming也不过如此,难的是长期坚持实践和不遗余力的博览群书。&& & & &8、如果不是天才的话,想学编程就不要想玩游戏--你以为你做到了,其实你的C++水平并没有和你通关的能力一起变高--其实可以时刻记住:学C++是为了编游戏的。& & & &9、看Visual C++的书,是学不了C++语言的。& & & &10、浮躁的人容易说:XX语言不行了,应该学YY;&&是你自己不行了吧!?&& & & &11、浮躁的人容易问:我到底该学什么;&&别问,学就对了;&& & & &13、浮躁的人容易说:我要中文版!我英文不行!&&不行?学呀!&& & & &14、浮躁的人容易问:XX和YY哪个好;&&告诉你吧,都好&&只要你学就行。& & & &15、浮躁的人分两种:a)只观望而不学的人;b)只学而不坚持的人。&& & & &16、把时髦的技术挂在嘴边,还不如把过时的技术记在心里。&& & & &17、C++不仅仅是支持面向对象的程序设计语言。&& & & &18、学习编程最好的方法之一就是阅读源代码。&& & & &19、在任何时刻都不要认为自己手中的书已经足够了。&& & & &20、请阅读《The Standard C++ Bible》(中文版:标准C++宝典),掌握C++标准。&& & & &21、看得懂的书,请仔细看;看不懂的书,请硬着头皮看。&& & & &22、别指望看第一遍书就能记住和掌握什么--请看第二遍、第三遍。& & & &23、请看《Effective C++》和《More Effective C++》以及《Exceptional C++》。&& & & &24、不要停留在集成开发环境的摇篮上,要学会控制集成开发环境,还要学会用命令行方式处理程序。&& & & &25、和别人一起讨论有意义的C++知识点,而不是争吵XX行不行或者YY与ZZ哪个好。&& & & &26、请看《程序设计实践》,并严格的按照其要求去做。&& & & &27、不要因为C和C++中有一些语法和关键字看上去相同,就认为它们的意义和作用完全一样。&& & & &28、C++绝不是所谓的C的&扩充&--如果C++一开始就起名叫Z语言,你一定不会把C和Z语言联系得那么紧密。&& & & &29、请不要认为学过XX语言再改学C++会有什么问题--你只不过又在学一门全新的语言而已。&& & & &30、读完了《Inside The C++ Object Model》以后再来认定自己是不是已经学会了C++。&& & & &31、学习编程的秘诀是:编程,编程,再编程。&& & & &32、请留意下列书籍:《C++面向对象高效编程(C++ Effective Object-Oriented Software Construction)》、《面向对象软件构造(Object-Oriented Software Construction)》、《设计模式(Design Patterns)》、《The Art of Computer Programming》。& & & &33、记住:面向对象技术不只是C++专有的。&& & & &34、请把书上的程序例子亲手输入到电脑上实践,即使配套光盘中有源代码。&& & & &35、把在书中看到的有意义的例子扩充。&& & & &36、请重视C++中的异常处理技术,并将其切实的运用到自己的程序中。&& & & &37、经常回顾自己以前写过的程序,并尝试重写,把自己学到的新知识运用进去。&& & & &38、不要漏掉书中任何一个练习题--请全部做完并记录下解题思路。&& & & &39、C++语言和C++的集成开发环境要同时学习和掌握。&& & & &40、既然决定了学C++,就请坚持学下去,因为学习程序设计语言的目的是掌握程序设计技术,而程序设计技术是跨语言的。& & & &41、就让C++语言的各种平台和开发环境去激烈的竞争吧,我们要以学习C++语言本身为主。&& & & &42、当你写C++程序写到一半却发现自己用的方法很拙劣时,请不要马上停手,请尽快将余下的部分粗略的完成以保证这个设计的完整性,然后分析自己的错误并重新设计和编写(参见43)。& & & &43、别心急,设计C++的class确实不容易;自己程序中的class和自己的class设计水平是在不断的编程实践中完善和发展的。&& & & &44、绝不要因为程序&很小&就不遵循某些你不熟练的规则--好习惯是培养出来的,而不是一次记住的。&& & & &45、每学到一个C++难点的时候,尝试着对别人讲解这个知识点并让他理解--你能讲清楚才说明你真的理解了。&& & & &46、记录下在和别人交流时发现的自己忽视或不理解的知识点。&& & & &47、请不断的对自己写的程序提出更高的要求,哪怕你的程序版本号会变成Version 100.XX。&& & & &48、保存好你写过的所有的程序--那是你最好的积累之一。&& & & &49、请不要做浮躁的人。&& & & &50、热爱C++!& & & &鸡啄米再跟大家强调几点,就像上面说的,VC++我们需要学会,但请记住它并不代表C++语言,而只是C++的开发平台,我们应该更加重视根本--C++语言;学习编程最好的方法是看完入门教程,然后学习分析源码,最后自己编程实践,在学习几门语言后就驾轻就熟了;学好C++也不是最终目的,最后你会理解到,程序设计技术才是我们一直努力的方向,它是跨语言的。& & & &最后,鸡啄米也想说这句话,学习C++就请热爱C++!
除非特别注明,文章均为原创
转载请标明本文地址:
作者:鸡啄米
&&( 21:30:42)&&( 0:9:11)&&( 22:13:38)&&( 21:26:24)&&( 21:50:31)&&( 21:43:21)&&( 21:5:33)&&( 22:20:43)&&( 22:56:16)&&( 21:18:20)
我感覺有C言語好點吧
当初学C语言脑袋都大了,于是放弃了!这样的话C++是不是更难呀!!鸡啄米 于
22:34:32 回复也不能说是更难,主要是编程思想不一样
C#学过一点点,不过我现在主要是学习易语言 中文编程 楼主牛人啊 鸡啄米 于
22:26:13 回复本博的读者有一些是从易语言转过来的
我想学c++大家谁能推荐下舍弃浮躁, 50条重要的C++学习建议 1.把C++当成一门新的语言学习(和C没啥关系!真的); 2.看《Thinking In C++》,不要看《C++变成死相》(C+...由 鸡啄米 于
23:07:35 最后编辑
我也刚刚开始学C++编程!鸡啄米 于
23:18:51 回复那欢迎以后常来交流
学就对了;
就请坚持学下去,
《Thinking In C++》和《C++ Primer》哪个比较好点,对刚入门C++的小菜?鸡啄米 于
15:56:59 回复个人认为,两个都不是很好,内容都太复杂,可以先看看我的C++编程入门系列,也可以找个其他简单易懂的教程看看,这两本书可以作工具书用
才正式学C++呢,希望有效果
我已经看完了C++ Primer Plus 6.0, 看了好多遍,可以说入门了,最近又开始看《Windows编程第五版》,现在看完第七章了(当然,收获也不小,知道Windows是这么回事了)。脑袋大了,发现Window编程的框架,与纯字符编程差别太大,现在看的我思想很乱,请高手帮我指个方向。谢谢!
完全随机文章

我要回帖

更多关于 c语言经典编程282例 的文章

 

随机推荐