博文
输入输出的总结!(2007-05-19 22:10:00)
摘要:这几天对前面的知识又看了一遍,有些东西想总结比较下:
对于c和c++的输入输出函数想必大家都很熟悉,但有多少呢?
putchar() getchar() puts() gets() getline() printf() scanf() cout<< cin>>等函数
putchar()和getchar()是对单个的字符的输入输出:
char a=`A`,b=`B `;
putchar(a);或putchar(`A`);
puts()和gets()是针对字符数组的输入输出:
char str[50 ];
gets(str); 从键盘输入: How are you!
puts(str); 屏幕上输出: How are you!
而对于printf()和scanf() ,cout<< ,cin>>可没有这样的待遇啊!因为他们只将空格前的字符读入,所以用他们只会在屏幕上显示How
对于没有空格的字符串如:char c[6 ]={"China"};有两种方式输出:
①逐个的字符输出便要用到for循环利用下标控制来逐个字符输出:
for(i=0;i<6;i++) printf("%c",c[i]);
②整个字符串一次输入输出,用"%s"格......
string和vector的理解!(2007-05-09 00:33:00)
摘要:五一在家就把string和向量看了几遍!有些理解在这里写下来!!
string和向量都是自定义的数据类型!
对于string的一些基本操作!
ifstream in("xxx.txt")
string s;
getline(in,s);
string流
istringstream sin(s);
sin>>a;
in和sin类似,只是对象不同,in对应的是文本文件的读取,sin对应的是定义的string变量!
string里存放数据象数组一样,只是不可以单个的对数据进行操作!虽然string将换行符略掉地读取数据,但他本身保留了换行的位置,所以这也是其一大优点!
vector的操作!
vector<int> v;
for(int a;in>>a;)
v.push-back(a);
for(string s;getline(in,s);)
for(istringstream sin(s);sin>>v;)
利用流来对向量进行输入数据!而string的内部默认换行有
助于向量内部的存储数据!
向量可以象数组一样对单个的数据进行操作!v[ 0] ,v[1]......
这样把二者结合起来使用可以更方便的进行数据处理!......
什么是迭代跟递归算法?二者有什么区别?(2007-04-26 20:53:00)
摘要: 迭代算法是用计算机解决问题的一种基本方法。它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值。
利用迭代算法解决问题,需要做好以下三个方面的工作:
一、确定迭代变量。在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。
二、建立迭代关系式。所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系)。迭代关系式的建立是解决迭代问题的关键,通常可以使用递推或倒推的方法来完成。
三、对迭代过程进行控制。在什么时候结束迭代过程?这是编写迭代程序必须考虑的问题。不能让迭代过程无休止地重复执行下去。迭代过程的控制通常可分为两种情况:一种是所需的迭代次数是个确定的值,可以计算出来;另一种是所需的迭代次数无法确定。对于前一种情况,可以构建一个固定次数的循环来实现对迭代过程的控制;对于后一种情况,需要进一步分析出用来结束迭代过程的条件。
例 1 : 一个饲养场引进一只刚出生的新品种兔子,这种兔子从出生的下一个月开始,每月新生一只兔子,新生的兔子也如此繁殖。如果所有的兔子都不死去,问到第 12 个月时,该饲养场共有兔子多少只?
分析: 这是一个典型的递推问题。我们不妨假设第 1 个月时兔子的只数为 u 1 ,第 2 个月时兔子的只数为 u 2 ,第 3 个月时兔子的只数为 u 3 ,……根据题意,“这种兔子从出生的下一个月开始,每月新生一只兔子”,则有
以下是引用片段:u 1 = 1 , u 2 = u 1 + u 1 × 1 = 2 , u 3 = u 2 + u 2 × 1 = 4 ,……
根据这个规律,可以归纳出下面的递推公式:
以下是引用片段: u n = u n - 1&n......
成为编程高手的二十二条军规(2007-04-10 15:32:00)
摘要:成为编程高手的二十二条军规;1.大学生活丰富多彩,会令你一生都难忘,但难忘有很多种,你可以学了很多东西而难忘,也会因为什么都没学到而难忘!2.计算机专业是一个很枯燥的专业,但即来之、则安之,只要你努力学,也会发现其中的乐趣的。3.记住:万丈高楼平地起!基础很重要,尤其是专业基础课,只有打好基础才能学得更深。4.C语言是基础,很重要,如果你不学好C语言,那么什么高级语言你都学不好。5.C语言与C++语言是两回事。就像大熊猫和小熊猫一样,只是名字很像。6.请先学习专业课《数据结构》、《计算机组成原理》,不要刚开始就拿着一本VC在看,你连面向对象都搞不清楚,看VC没有任何用处。7.对编程有一定的认识后,就可以学习C++了。(是C++而不是VC,这两个也是两码事。C++是一门语言,而VC教程则是讲解如何使用MFC类库,学习VC应建立在充分了解C++的基础之上。看VC的书,是学不了C++语言的。)8.学习编程的秘诀是:编程,编程,再编程;9.认真学习每一门专业课,那是你今后的饭碗。10.在学校的实验室就算你做错一万次程序都不会有人骂你,如果在公司你试试看!所以多去实验室上机,现在错得多了,毕业后就错得少了。11.从现在开始,在写程序时就要养成良好的习惯。12.不要漏掉书中任何一个练习题--请全部做完并记录下解题思路。13.你会买好多参考书,那么请把书上的程序例子亲手输入到电脑上实践,即使配套光盘中有源代码。14.VC、C#、.NET这些东西都会过时,不会过时的是数据结构和优秀的算法!15.记住:书到用时方恨少。不要让这种事发生在你身上,在学校你有充足的时间和条件读书,多读书,如果有条件多读原版书,你要知道,当一个翻译者翻译一本书时,他会不知不觉把他的理念写进书中,那本书就会变得像鸡肋!16.我还是强调认真听专业课,因为有些课像《数据结构》、《编译原理》、《操作系统》等等,这种课老师讲一分钟能让你明白的内容,你自己看要看好几个月,有的甚至看了好几年都看不明白。 17.抓住在学校里的各种实践的机会,要为自己积累经验,就业时经验比什么都有用。18.多去图书馆,每个学校的图书馆都有很多好书等你去看!19.编程不是技术活,而是体力活。20.如果你决定了要当一个好的程序员,那么请你放弃游戏,除非你是那种每天只要玩游戏就能写出好程序的天才!21.你要有足够的韧性和毅力!有个高手出一一道题测......
