理论脱离实践是最大的不幸。——达芬奇html
达芬奇,是我眼里最有嫌疑的穿越者。java
绘画、天文、雕塑、音乐、发明、建筑,数学、生理、物理、天文、地质……我很难想象有一我的能在这么多的领域都取得堪称你们的成就。从他的这句话中,彷佛能让咱们一窥他成功的秘诀。编程
在阅读了娄老师的博客后,我对于以后的学习也有了一些的感触,就在这里记录一下吧。小程序
在娄老师的博客作中学中,老师与咱们分享了学习的经验方法,并向咱们推荐了一些学习的资料和途径,并和咱们分享了练五笔,减肥,打乒乓球,背单词的经验。在这些过程当中,注重方法,作好规划,注重坚持。数组
我主要的感悟是,一是要有足够科学的方法,娄老师所强调的作中学,强调了,学习须要的是理论,思考,实践,总结的结合。二是要作一个自制的人,这里的自制不限于自个人克制,更多地是在于自个人管理,克制恶习的同时,要能主动地去完成本身的目标,因此,在这中间,我认为制定本身的目标,并对本身进行自我和外界的监督极为重要。网络
这个问题,其实我是有一些惭愧的,父母一直奉行着放养原则,并不强迫我去参加一些兴趣班,补习班之类的,而我对于本身感兴趣的事物大可能是自学,要达到比90%的人要好,我确定是没有这个自信的。仔细想了以后,本身能写的大概就是自学能力和耐心能写吧。多线程
就自学能力来讲,我以为本身应该能够算是比大多数人要好一点,小时候对奥数比较感兴趣,奥数班也是我为数很少的报的兴趣班,在那里的一些思惟方式对于以后一些知识的理解助力。以后在高中也报了很多的竞赛,高二时未选生物,生物也算是基本自学,也有一些成绩。还有本身感兴趣的事物,也基本是自学。还有耐心,最明显的表现大概就是,我对于一些细小的工做会更加的感兴趣。编程语言
总结一下,我以为经验主要是有如下几点吧:函数
共同之处的话,我以为主要在于。规划,自制和合适的监督这三点。学习
我以为这三点,规划在于在学习之初的指导做用,还有对本身的一个指望,是学习开始一个必要的阶段。自制,则是可以坚持的关键,也是整个学习过程的关键,否则,三天打鱼,两天晒网,只在初期努力就只能在得到很浅的知识,并不能对本身有什么提高。合适的监督则是一个辅助的机制,减小本身的惰性心理,预防放弃也是不可小视的。
你是怎么学习C语言的?(做业,实验,教材,其余),与你的高超技能相比,C语言的学习有什么经验和教训?
在C语言的学习过程当中,在大一上学期就已经有所接触,并且我认为我主要的知识也是在大一上完成了基本的了解,下学期主要着重于积累和练习。我以为主要的学习过程为:自学,听讲,练习,复习,巩固。
相比于以前提到的技能,我以为主要的区别就在于,C语言,我是出于一种必要技能的须要来学习的,并非出于我的最初的兴趣。而且,由于在下学期又进行了二次的学习,算是学习了两次吧。
我以为在C语言的学习过程当中,主要的经验教训在于,在学习以后,不能只能依靠练习来进行复习,毕竟,咱们所接触的那些练习和题目,都是在咱们能力范围内的,而C语言,有不少实际上是咱们上课程上接触不到的,对于编程语言的学习,若是只限于课程范围内,那么就永远只能掌握很小的一部分,咱们要在掌握的基础上,不断扩展,才能真正的掌握知识。
目前为止估算本身写过多少行C代码?理解的状况如何?量变引发质变,如何平衡质和量?
我以为本身写的代码,大概有3000到4000行。就本身所掌握的来讲,这3000~4000行代码,有很大一部分是一些内容的变形,重复。就这些小部分的知识,我以为掌握是没有问题的。可是很无奈的是,C语言的内容并非只有这些,有不少知识,我至今仍是只知其一;不知其二,甚至根本不了解。
我以为在学习中质变和量变有两种,一是对一个知识点,或对某一个知识块的了解和练习的量变达到一个对这一个知识的质变的点,也就是彻底的掌握和延伸。二是这样的知识点或知识块的积累的量变,而且,达到了这样的知识块的链接,则达到了整个学科的理解的质变。简单来讲,就是量变引发部分的质变,再到总体的质变。咱们不能停留于一个个部分的质变,而要不断去追求总体的质变。
学过了C语言,你分的清数组指针,指针数组;函数指针,指针函数这些概念吗?
对于这个问题,我还有有点懵的,去找了一些博客做为参考的资料的。
学过了C语言,你明白文件和流的区别和联系吗?如何区分文本文件和二进制文件?如何编程操做这两种文件?
并不清楚,如下是我查阅资料所得:
文件的打开操做 | fopen | 打开文件 |
---|---|---|
文件的关闭操做 | fclose | 关闭文件 |
文件的读写操做 | fgetc | 从文件中读取一个字符 |
fputc | 写一个字符到文件中去 | |
fgets | 从文件中读取一个字符串 | |
fputs | 写一个字符串到文件中去 | |
fprintf | 往文件中写格式化数据 | |
fscanf | 格式化读取文件中数据 | |
fread | 以二进制形式读取文件中的数据 | |
fwrite | 以二进制形式写数据到文件中去 | |
getw | 以二进制形式读取一个整数 | |
putw | 以二进制形式存贮一个整数 |
学过了C语言,你知道什么叫面向过程程序设计吗?它解决问题的方法是什么?
C语言是一种面向过程的程序设计,这是一种以过程为中心的编程思想。
解决问题的方法为:分析出解决问题所须要的步骤,而后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就能够了。
在C语言里面,什么是模块?你写过多个源文件的程序吗?
查阅了如下资料,emmmm...仍是有一种只知其一;不知其二的感受啊,感受到本身对C语言的了解仍是停留在很表层的阶段,多个源文件的程序也没有写过。
以独立性、低耦合性,逐层分解”的基本思想描述(分解)系统,首先以数据流图为基础导出系统模块(功能)结构图,直到每一模块都是功能单一的模块系统模块(功能)结构图 结构化设计方法、“自顶向下、公共模块做为模块划分的原则,再将各大模块继续划分为较小的模块、高内聚性。
学过了C语言,你知道什么是“高内聚,低耦合”吗?这个原则如何应用到高质量程序设计中?
在学习过程当中,常常听到这个原则,可是没有详细的了解过,又只能找度娘了......
内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当刚好作一件事。它描述的是模块内的功能联系;
耦合是软件结构中各模块之间相互链接的一种度量,耦合强弱取决于模块间接口的复杂程度、进入或访问一个模块的点以及经过接口的数据。
就我我的的理解就是,在系统之中,单个模块要使他尽量的联系紧密,可是模块之间,尽量的使其独立存在,减小相互之间的影响。
学过了C语言,你如何把数组A的内容复制到数组B中?如何查找整数数组A中有没有数字5?如何对整数数组A进行排序(从小到大,从大到小)?写出相应的程序。
我将全部的功能都放在了下面这个程序里了。
#include <stdio.h> #include <stdlib.h> #define N 100 int main() { int a[N],b[N],n,i,j,temp; printf("请输入数组中数的个数:"); scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); b[i]=a[i]; //数组复制 } for(i=0;i<n;i++) { if(a[i]==5) { printf("数组中有5"); exit(0); } } printf("数组中没有5"); //查找数组中的5 for(i=0;i<n-1;i++) { for(j=i+1;j<n;j++) { if(a[i]<a[j]) { temp=a[i]; a[i]=a[j]; a[j]=temp; } } } //从大到小排序 for(i=0;i<n-1;i++) { for(j=i+1;j<n;j++) { if(a[i]>a[j]) { temp=a[i]; a[i]=a[j]; a[j]=temp; } } } //从大到小排序 return 0; }
写一个程序,统计本身C语言共写了多少行代码。
这个程序,真的是没什么头绪,个人文件操做,真是的,一团糟,当时也只是作了一点点的了解(有种后悔莫及的感受......)
目前思路大概是,导入文件,统计换行符,判断注释及空行。可是,文件操做真的是一团乱麻,因此如今先写了一个统计行数的程序。
#include <stdio.h> #include <stdlib.h> int main() { char a; int l=0; do { a=getchar(); if (a=='@') break; if (a=='\n') l++; }while(1); printf("共有%d行。\n",l); }
还有文件的操做部分和对于注释空格的判断,打算不断地学习完善,争取能尽快写出来!
下面是一些找到的博客资料,做为完善的参考:
你知道什么是断点吗?给出本身调试程序的例子。
断点是一种调试方法,即在调试中设置断点,下一次让程序自动运行到断点位置,即可在上次设置断点的位置断下来,能够提升调试的效率。
个人目标主要就是可以真正的学到知识,能独立的编写完成本身的小程序。在简单看了一遍PPT以后,我几乎有一种头昏脑涨的感受,各类概念,名词,在脑子里乱飞。
在即将到来的Java学习中,我对本身的最低要求是要可以真正的理解掌握新的知识。在作完C语言基础的调查以后,我深深地感受到,以前的C语言学习和成绩是有很大水分的,有一些概念真的是一律不知。在此基础上,还须要作知识的延伸,理解掌握这门课。