求助关于c语言算法!

来源:百度知道 编辑:UC知道 时间:2024/06/05 10:45:36
学习一段时间的c语言了,感觉语法基本上都懂了,但是遇到较难的问题时就没有思路了,甚至连有些算法都看不懂。请问如何才能提高对算法的理解,和培养求解c语言问题的思路!!

单步执行观察每一步每一变量是怎么变化的可以增进对算法的理解,现在教你怎样用VC++6.0进行简单的单步执行:
首先对程序进行编译和链接
然后按F9选择断点,再按F5进入调试状态,再按F10或F11(F10不进入子函数,F11进入子函数)进行单步执行。
对于怎样培养思路,重在对每个算法的理解,当然,当遇到好的算法还是要去记忆的。当你彻底掌握了一些经典的算法(如冒泡法、选择法),再遇到题就不会不知所措了,根据题目的要求,在写程序前就会想先让它实现什么,再让它实现什么,慢慢的自己的写程序的水平就会提高!
我建议你暂时还是不要去看数据结构这本书,因为这本书需要用离散数学做基础,而且数据结构很难,看了你会越来越糊涂!

简单点说是锻炼分析能力吧?
其实这个就看你怎么想了,基本上逻辑思维都能转化成算法的。
简单的例子是:求出3个数的最大数
你会想把他们分别比一下就行了
如果A>B>C那么最大的就是A了
。。。。。。。。。。。。。
。。。。。。。。。。。。。
难点的例子是:学生成绩管理系统
你就分析下,首先要输入学生的姓名,学号和成绩
实现的功能一般是:求及格的是谁,查询某个人的资料。
那分析下就是:如果成绩大于60,就输出这个学生的资料
按学号查询,那从键盘输入一个学号,如果输入的学号等于资料里的学号,那就输出这个学号学生的资料就行了。

然后一步一步用代码去实现。

看程序是一种很重要的能力。多看多练,肯定会提高的

先大量看程序代码(自己确实不会的基础上一定要问懂,有时候上机调试,你就发现有时问题很简单,所以要多上机检查)
并模仿写,这个是很关键的
最后要写的时候自然游刃有余

算法呢,要学好是要下苦功夫的,多看看别人的程序,如果数据结构没学的话,那要学好算法是不可能的,所以呢,先学好几种数据结构,例如:堆栈,链表,队列。。。然后自己再试着写一些程序。

结合数学~有时候还是要靠自己的聪明才智了~
比如让你计算一个几万的几万次方的个位十位和百位,你就需要比较快的意识到这个从一开始的计算中,就与底