20155330预备作业2:做中学——实践中思考
-
你有什么技能比大多人(超过90%以上)更好?
- 摄像
-
针对这个技能的获取你有什么成功的经验?
与老师博客中的学习经验有什么共通之处?
到目前为止应该还算不上成功吧,所以也谈不上经验,毕竟还没有参加过比较正式的比赛。但在摄影方面掌握的知识应该比大多数人要多一些。摄影除了知道相机的构造,各个按键的功能,更注重的是拍摄者的感觉,当然也要多看、多做、多思考。
-
有关C语言学习的调查
- 你是怎么学习C语言的?(作业,实验,教材,其他),与你的高超技能相比,C语言的学习有什么经验和教训?
主要是课堂上听老师讲课,随堂记笔记;课后整理笔记,在平台上做题,巩固所学内容。
学习c语言的经验和教训总结起来应该是要多实践,多自己写代码,在调试代码,不断修改的过程中完善程序,同时,也能从中加深对各种概念的理解。- 目前为止估算自己写过多少行C代码?理解的情况如何?
不算重复的练习,粗略的估计大约在2000到3000行左右?其实不是很确定,大一下学期学习C语言时写过很多代码,自己也不太记得了。对指针、数组、结构体、文件部分了解的情况不太理想,还有很多不明白和疑惑的地方,运用起来出现的问题也比较多。
- 学过了C语言,你分的清数组指针,指针数组;函数指针,指针函数这些概念吗?
数组指针: 指向数组的指针。例:
int (*a)[4];
指针数组: 用于存储指针的数组,也就是数组元素都是指针。
例:int* a[4];
函数指针: 指向函数的指针变量。
指针函数: 带指针的函数,即本质是一个函数。
- 学过了C语言,你明白文件和流的区别和联系吗?如何区分文本文件和二进制文件?如何编程操作这两种文件?
文件: 计算机管理数据的基本单位,同时也是应用程序保存和读取数据的一个重要场所。
流: 字节序列的抽象概念,例如文件、输入/输出设备、内部进程通信管道等。流提供一种向后备存储器写入字节和从后备存储器读取字节的方式。
区别和联系: 文件是指在各种存储介质上(如硬盘、可移动磁盘、CD等)永久存储的数据的有序集合,它是进行数据读写操作的基本对象。而除了和磁盘文件直接相关的文件流以外,流还有多种类型。流可以分布在网络中、内存中或者是磁带中。
文本文件: 字符编码文件,即以ASCⅡ码进行存储的文件
二进制文件: 二进制数值存储文件
至于编程操作则由于才疏学浅,暂时还不是很会
- 学过了C语言,你知道什么叫面向过程程序设计吗?它解决问题的方法是什么?
这部分其实不是特别了解,因为老师课上有讲过,所以对面向对象比较有印象一点,面向对象是一种以事物为中心的编程思想。那么以此类推,面向过程大约就是以过程为中心的编程思想吧。
上网搜索了一下,面向过程程序设计就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用。- 在C语言里面,什么是模块?你写过多个源文件的程序吗?
在C语言中所使用的函数就是一种模块,文件应该也算模块。
没有
- 学过了C语言,你知道什么是“高内聚,低耦合”吗?这个原则如何应用到高质量程序设计中?
程序模块功能性强,各模块相互独立。
- 各个模块之间的功能必须明确;
- 各个功能模块间实现的功能不可以有交叉;
- 不允许出现模块间的相互调用;
- 如果必须出现模块间调用,那么只允许单向调用,即A可以调用B,B不可以调用A。
- 学过了C语言,你如何把数组A的内容复制到数组B中?如何查找整数数组A中有没有数字5?如何对整数数组A进行排序(从小到大,从大到小)?写出相应的程序。
数组A内容复制到数组B中
#include <stdio.h> int main() { int a[10]={0}; int b[10]; int i; for(i=0;i<10;i++) { b[i]=a[i]; printf("%d ",b[i]); } return 0; }
查找整数数组A中有没有数字5
#include <stdio.h> int main() { int a[10],i,x; for(i=0;i<10;i++) { scanf("%d",&a[i]); } for(i=0;i<10;i++) { if(a[i]==5) { printf("%d",a[i]); break; } } }
整数数组A进行排序
#include<stdio.h> void main() { int a[10] = { 10,2,3,4,5,6,9,8,7,1 }; int i,j,t; for(j=0;j<10;j++) for(i=0;i<10-1-j;i++) if(a[i]>a[i+1]) /* 由小到大,由大到小时改为< */ { t=a[i]; a[i]=a[i+1]; a[i+1]=t; } for(i=0;i<10;i++) printf("%d ",a[i]); }
- 写一个程序,统计自己C语言共写了多少行代码。
不会
- 你知道什么是断点吗?给出自己调试程序的例子。
在程序的某一行设置一个断点,调试时,程序运行到这一行就会停住,然后可以一步一步往下调试,调试过程中可以看各个变量当前的值,出错的话,调试到出错的代码行即显示错误,停下。
- 对比C语言的学习,你对《Java程序设计》的学习有什么具体目标?如何通过刻意训练提高程序设计能力和培养计算思维?如何通过“做中学”实现你的目标?
能够很好的掌握java的语言基础,勤加练习,在学习过程中不但求量更要求质。做中学,不仅要实践,更要懂得思考,在思考的过程中发现新的内容。
- 毕业后大多数人从事的工作的要求是“提笔能写,开口能说,问策能对,遇事能办”,非常重要的技能是公文写作能力,你觉得自己写作能力如何?要怎么提高?
目前来说,写作能力还算可以,但还未尝试过公文写作。
在不久前鲍书记在形策课上专门给我们讲了如何写公文一课,公文写作需要大量的阅读量来支撑,除此之外公文是否写的好还取决于很多很多的因素。提高写作能力首先需要阅读大量的书籍、范文。其次,我认为,就个人而言形成自己的写作风格也尤为重要。