20165323 学习基础和C语言基础调查

20165323 学习基础和C语言基础调查

一、技能学习心得

1、你有什么技能比大多人更好?

我觉得我羽毛球打的还行,不能说打得比大多数人好,但是对于一些打羽毛球的要领还是掌握的。

2、针对这个技能的获取你有什么成功的经验?

想要打好羽毛球,首先你得建立起对它的兴趣。你对打羽毛球这件事产生了兴趣,你才能够更加投入地去练习它,这样子你的效率才高。如果你对这件事没有兴趣,那么你对于这件事的态度或许只是在应付而已,这样子就不会有任何的意义,也很难提升自己的水平。其次,便是坚持。常言道:“宝剑锋从磨砺出,梅花香自苦寒来。”只要你能够坚持下来,每天进行练习,积累经验,你的能力就会得到提高。那些专业的运动员,为什么他们打的那么好,就是因为他们练习的够多。每天一个动作都要来回做几百次乃至上千次,形成肌肉记忆。而且羽毛球是一项非常耗费体力的运动,训练体能的过程也是一个非常难熬的过程。绕着四个场子跑个五六十圈,然后进行对打练习,有时候挥拍挥到胳膊都伸不直,这也是常见的事。而完成这些过程的前提是什么?那就是自己内心对于这件事的坚持。为什么我们和专业运动员有着明显的差距,因为他们已经在能力上有了进一步的升华。这跟娄老师在《做教练与做中学》所说的实践要具备一定的量才能引起质变有着共通之处。也正如娄老师在博客中所说,

技能的提升要「刻意训练」

低水平重复是不行的,训练时间再长都没用

要摆脱「舒适区」,进入「学习区」学习

要循序渐进,不能进入「恐慌区」

--引用自《做教练与做中学》。大部分人打球只是停留于“舒适区”,这便是专业运动员与我们存在差距的原因所在。

二、有关C语言学习的调查

1、你是怎么学习C语言的?

大一下学期学习C语言这门课程,先是通过消化上课时老师所讲的内容,理解所讲的含义,能弄懂大部分的内容。但是实践上存在很大的问题,不知道如何具体的使用,不知道应该从哪一步开始下手。在作业系统中完成作业时,先写出一些简单的代码,通过写一些简单的题来加深自己对这些内容的理解。当感觉自己理解的差不多的时候,再开始去做一些稍微复杂的题目。可能题目不如那些简单题目那样一目了然,不过我会自己先思考一下,尝试去写一下代码,如果实在写不出来,再看看答案是怎么去做的,如果里面的步骤还是不能够去理解,再去请教一下老师和同学。当确定自己已经理解如何去做之后,过一段时间再去做一下同类型的题,看看自己是否还能够做出来,防止自己遗忘这部分的内容。与打羽毛球相比,C语言的学习最重要的也是练习量,你做的够多,能够理解的也就越多。当你的理解达到一定层面的时候,你就应该摆脱“舒适区”,继续做一些比较复杂的题目,积累一定的题目,达到一定的量而引起质变。

2、目前为止估算写过的代码数,理解情况

估计代码可能写了3000-4000行左右,大部分简单的代码都能理解,但是一些复杂的题目做起来难度还是很大,很难自己编写出来。对我来说,大量的练习是必不可少的,我觉得要做到质和量的平衡还是要多加练习。

3、学过了C语言,你分的清数组指针,指针数组;函数指针,指针函数这些概念吗?

数组指针:指向数组的指针

    指针数组:数组元素全为指针的数组

    函数指针:指向函数的指针包含函数的地址,调用函数

    指针函数:指针函数返回类型是某一类型的指针

4、学过了C语言,你明白文件和流的区别和联系吗?如何区分文本文件和二进制文件?如何编程操作这两种文件?

没有明白两者的区别与联系。查了一下百度《C语言流与文件

5、学过了C语言,你知道什么叫面向过程程序设计吗?它解决问题的方法是什么?

“面向过程”是一种以过程为中心的编程思想。就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。

6、在C语言里面,什么是模块?你写过多个源文件的程序吗?

函数应该就是一个模块吧。还没写过多个源文件的程序。

7 学过了C语言,你知道什么是“高内聚,低耦合”吗?这个原则如何应用到高质量程序设计中?

通过上网查找,理解了一下

高内聚,低耦合,说的是在程序的各各模块中,尽量让每个模块独立,相关的处理尽量在单个模块中完成

8、学过了C语言,你如何把数组A的内容复制到数组B中?如何查找整数数组A中有没有数字5?


#include <stdio.h>
#define N 80
int main()
{
int a[N],b[N];
int i,n,k=0;
printf("input n:");
scanf("%d",&n);
printf("A:");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
b[i]=a[i];
if(a[i]==5)
{
printf("该数组有5\n");
break;
}
}
if(a[i]!=5)
{
printf("该数组没有5\n");
}
printf("B:\n");
for(i=0;i<n;i++)
{
printf("%d\t",b[i]);
}
printf("\n"); return 0;
}

9、如何对整数数组A进行排序(从小到大,从大到小 )?写出相应程序。

#include <stdio.h>
#define N 40
int main()
{
void min(int a[],int n);
void max(int a[],int n);
int a[N];
int i,n,k=0;
printf("input n:");
scanf("%d",&n);
printf("A:");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
printf("从小到大排序输入0,从大到小排序输入1\n");
scanf("%d",&k);
if(k==0)
{
min(a,n);
printf("从小到大排序后的整数依次为:\n");
for(i=0;i<n;i++)
printf("%d\t",a[i]);
printf("\n");
}
if(k==1)
{
max(a,n);
printf("从大到小排序后的整数依次为:\n");
for(i=0;i<n;i++)
printf("%d\t",a[i]);
printf("\n");
}
return 0;
}
void min(int a[],int n)
{
int i,j,temp;
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(a[i]>a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
}
void max(int a[],int n)
{
int i,j,temp;
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(a[i]<a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
}

写一个程序,统计自己C语言共写了多少行代码

真心不会

你知道什么是断点吗?给出自己调试程序的例子。

断点就是程序调试是自动中断的地方。

提出问题

1、Java源文件中为什会有不同的类?怎么区分?

2、数组的引用是什么?

3、for语句在Java中所具有的不同于C语言中的用法有什么?

4、实例方法和类方法的区别是什么?

5、子类与对象之间的关系是什么?

6、接口如何理解以及面向借口编程的思路是什么?

7、异常类如何使用?

8、String类与StringBuffer类的区别与联系?

9、常用布局所适用的情况对应是什么?

10、不同的子类所对应的输入、输出流的类别是什么?

11、如何使用预处理语句?

12、如何创建多线程?

13、套接字与对象如何进行连接?

14、绘制基本图形应该注意什么?

15、如何对泛型和集合进行使用?

java学习目标及途径

养成每天写代码的习惯,做到知识的积累,量的积累产生质变,由此提高自己的知识面。每天完成布置的任务,利用课外时间看看ppt,加深对内容的理解。

上一篇:Linux 小知识翻译 - 「Shell」(也就是命令行接口)


下一篇:JS知识整理之 Call&Apply方法