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

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

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

技能及其学习经验

在阅读老师做中学系列文章的时候,读到了一句话:

开发极点起因主要是个人兴趣爱好和工作需要。

-- 引用自《做中学之五笔输入法实践教程

回顾自己的不断的学习实践过程中,自己所学得比较好的知识、技能大多都是由于自身的兴趣加上工作需要才一步步逐渐掌握。在最近掌握的几个技能当中,太极拳这项技能勉强可以达到一个较高的水平。

学习经验

入门

  1. 首先还是因为对传统武术有一定兴趣,加之可以锻炼身体,便决定加入学校社团,开始学习太极拳。
  2. 起初还是先了解了一下关于太极拳的历文化史及通过太极所能产生的积极作用,同时,了解了太极锻炼中的注意事项。
  3. 刚开始学习的也就是一些基础太极杨氏步法,一些基本的太极拳架。

    学习过程

    我在整个太极拳学习的过程中大致分为4个阶段:

  • 第一阶段:学习套路中每一式的动作。由于传统武术很多都将套路分为很多式,实际上就是对整个套路分为了许多模块,而我学习的第一步就是将单个模块学会。在这里使用了在学习的基础上进行复习的方式,确保之前动作的熟练。
  • 第二阶段:控制身体使各动作连贯起来。这个阶段就相当于程序设计里的debug,最终目的是为了让整个动作可以流畅地完成。这里由于自己身体的协调能力还行,进行的比较顺利。
  • 第三阶段:对动作的优化。这一阶段也可以看作程序的优化。通过对动作的纠正,不断地走出舒适区,加强自己对身体的控制能力,使动作规范和美观。
  • 第四阶段:在不断地刻意训练中体会其神韵。在将近一个多月的时间中,每天将同一套动作重复20遍以上,在闲暇时间也在脑中演练动作的流程。通过不断分析其动作的运动逻辑,改进自己的动作,调整身体状态,最后将整套动作的神韵逐步地发掘出来。

    经验

  • 在不断学习的过程中,毅力是很重要的一环,在身体锻炼、基本功的上只有通过每天的练习才能有所进步,不断地克服身体上的不适以及合理安排时间。在后期不断重复训练的同时也要克服精神上所带来倦怠。
  • 在学习的时候要注意刻意练习,不要做单纯的低质量的重复劳动。
  • 反馈很重要,通过不断的反馈才能发现问题所在,从而进一步思考如何解决问题。

    C语言基础调查

    你是怎么学习C语言的?(作业,实验,教材,其他),与你的高超技能相比,C语言的学习有什么经验和教训?

c语言的学习时从大一下学期《程序设计基础》课程开始学习的,主要学习方式是在课下看教材了解内容,课上听徐老师讲需要注意的知识点。主要的学习方式是通过老师、同学所给出的题目,进行编程,通过单步调试理解相关知识。

同太极拳不同,在c语言的学习中需要更好地将思路整理清晰,同时还要考虑学习重点内容。由于c语言学习时比较偏重于老师的实验和作业,所以在许多更加实用版块的学习不足。(如:链表、位运算、文件操作)同时,由于有一学期的时间没有进行大量的编程,曾经的一部分知识有遗忘的迹象。此外,还存在书上代码理解后却无法在脱离书本时快速准确使用的问题。

目前为止估算自己写过多少行C代码?理解的情况如何?量变引起质变,如何平衡质和量?

目前为止估算下来写下来有3000行代码。在基础的语句方面已初步理解,对部分操作、库函数的理解还不充分,在不断进一步地学习。我认为,在达到一定量的基础上,应该通过所积累的量,不断通过自己的运用从而在质的方面进行提升。

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

对于些概念,之前有学习,为了分清这些概念也研究过。概念虽能分清,但是由于自己写代码时没有运用它们,所以使用起来不熟悉。通俗来讲,==数组指针==是指向数组首地址的指针,在一般的运用指针对一维数组操作时经常用到。==指针数组==是指若干相同类型的指针构成的数组,是指若干指针构成的数组,主要用于对多维数组做处理。==函数指针==是指向函数首地址的指针,其声明通常如下:

int (*f)(int a);/*声明一个函数指针*/
f=func;/*函数首地址赋给指针*/

==指针函数==是一个函数,其返回值为指针。声明如下:

int *f(int a);/*声明一个整型形参且返回值为整型指针的指针的函数*/

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

关于文件和流的区别和联系确实不明白,看过一些资料对二者有个粗浅的了解。文件是作为一个单元看待的外部相关数据的集合。而我看到对流的解释有一种是数据流,是按规定顺序读取的序列,另一种说的是流是一个类的对象,许多文件的输入输出都是通过调用类的成员函数来实现的。在文件I/O传输中,文件直接传输过程占用内核较多,而流可以做为一个缓冲,从而减少了系统调用。

文本文件和二进制文件的本质区别是存储数值型数据的方式不同,二进制文件中,数值型文件是以二进制文件形式存储的,而文本文件是将数值数据的ASCII码存储的。文本文件可以通过fopen()打开文件,参数可以是a+、w+、r+

二进制文件可用fopen()打开,参数为ab+、wb+、rb+

写入文件可以用fprintf()或fwrite()两类方式。

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

自己的理解为面向过程程序设计是以整个程序的过程为中心,以正在发生,处理的事物为准则来进行程序运行,不是为了适合具体对象所进行的程序设计。解决问题的方法是将问题整理划分,得到能反映问题各模块之间关系的结构图,然后通过模块化的程序设计进行编程,最后将各模块按关系连接。

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

这里我将模块理解为构成一个大项目的几个较小的部分,这些小部分分别执行各自的功能,由这些小部分互相通信构成整体项目的执行。在之前的学习过程中没有写过多个源文件的程序,就目前情况,需要进一步学习文件间的联系与使用。

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

内聚是程序中处理过程相关紧密程度的度量。高内聚意味着系统内各模块之间在处理过程中紧凑程度较高。耦合是对两个模块互相绑定紧密程度。两个模块间的耦合越紧,他们的独立性越差。而我们所需要的是各个模块间有较高的独立性,同时方便模块间的联系。高质量的程序中,模块处理过程紧凑,各模块相互绑定程度低,便是"高聚合,低耦合"。在程序设计中,可以通过尽量精简主程序,通过函数来实现那模块化来达到高内聚低耦合。

学过了C语言,你如何把数组A的内容复制到数组B中?如何查找整数数组A中有没有数字5?如何对整数数组A进行排序(从小到大,从大到小)?写出相应的程序。

程序如下:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int input(int b[],int c);
int output(int e[],int c);
int copy(int a[],int d[],int n);
int cmp(const void *p, const void *q);
int cmp1(const void *p, const void *q);
int main()
{
    int n,k=5;
    int *p;
    int a[100],d[100];
    printf("输入数组中数字个数");
    scanf("%d",&n);
    input(a,n);
    copy(a,d,n);
    output(a,n);
    output(d,n);
    qsort(a,n,sizeof(int),cmp);
    output(a,n);
    qsort(d,n,sizeof(int),cmp1);
    output(d,n);
    p = (int *)bsearch(&k,a,n,sizeof(int),cmp);
    (p == NULL) ? puts("not found") : puts("found");
    return 0;
}
int input(int b[],int c)
{
    int i;
    for(i=0;i<c;i++)
    {
     scanf("%d",&b[i]);
    }
    return 0;
}
int output(int e[],int c)
{
  int i;
    for(i=0;i<c;i++)
    {
     printf("%d",e[i]);
    }
    printf("\n");
    return 0;
}
int copy(int a[],int d[],int n)
{
  int i;
    for(i=0;i<n;i++)
    {
     d[i]=a[i];
    }
    return 0;
}
int cmp(const void *p, const void *q)
{
    return strcmp((char *)p,(char *)q);
}
int cmp1(const void *p, const void *q)
{
    return strcmp((char *)q,(char *)p);
}

这个程序是我通过进一步学习部分函数所写出来的。其中的排序和查找也可以用较为原始的方法来编程。

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

说实话,看到这个真是不会,只是有个简单的思路就是遍历电脑固定文件中的.c后缀的文件,然后统计行数去空行,上网查了一下,大致理解了一下。关于这个还需要要进一步学习。

#include<stdio.h>
#include<Windows.h>
#include<string.h>
int main()
{
    char filepath[1000], batpath[1010];
    gets(filepath);
    strcpy(batpath, filepath);
    strcat(batpath, "\\Text1.bat");
    FILE *fp;
    fp = fopen(batpath, "w");
    fputs("DIR *.c /B>list.txt", fp);
    fclose(fp);
    system(batpath);
    static int count = 0;
    FILE *fp1, *fp2;
    fp1 = fopen("list.txt", "r");
    char s[100];
    char singleline[1000];
    while(fgets(s, 100, fp1))
    {
        int len = strlen(s);
        if(s[len-1] == ‘\n‘) s[len-1] = ‘\0‘;
        printf("%s: ", s);
        fp2 = fopen(s, "r");
        while(fgets(singleline, 1000, fp2))
        {
            count++;
        }
        printf("%d\n", count);
        fclose(fp2);
    }
    printf("\n");
    fclose(fp1);
    system("pause");
    return 0;
}

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

断点我一般是在调试的时候用设置断点,设置断点后调试程序程序会在运行断点处中断。通常情况下是因为之前程序较多,存在循环的时候会设置断点,然后在断点结束处开始单步调试,发现问题。

每章提出一个问题

第一章:java的平台无关性是否可以理解为java自带一个虚拟机,针对不同平台将java代码做对应转换?

第二章:为什么int声明还可以像"平均=9898"这样?

第三章:instanceof我可以简单地理解为比较当前对象是否为一个集合(库)中的对象吗?

第四章:对象是否是限定于自己专属的类?对象同类中的变量和方法有什么关系?

第五章:子类的继承性也就是说子类中如果要使用父类中的方法和成员变量都不需要重写,直接使用?重写的在创建对象的时候是不是不需要再通过父类?

第六章:接口的设计是否在满足条件可以将不同类任意链接?

第七章:断言语句的作用是不是在最后程序的输出阶段可以去掉?也就是说断言语句的功能就是用来进行调试程序是作为一道保障?

第八章:string类是否也是通过库函数一样的调用来运行?

第九章:绑定键盘如何绑定区分带侧键键盘和不带侧键键盘?

第十章:缓冲流为什么相较于文件的直接操作要高效,流所运用的这种思想还能运用到哪里?

第十一章:MySQL库中的数据调用可以看做是c中的库的扩大版吗?库里具体可以调用哪些内容?

第十二章:多线程的使用如何更好地体现高内聚的思想?

第十三章:套接字链接的过程中是否会出现几个相同的程序同时链接的情况?

第十四章:在处理图像时,如何控制图像的显示分辨率?

第十五章:这一章同数据结构联系密切,树集和链表是否是一个高效的项目结构?

对比C语言的学习,你对《Java程序设计》的学习有什么具体目标?如何通过刻意训练提高程序设计能力和培养计算思维?如何通过“做中学”实现你的目标?

我选择java程序设计的目标是学习使用java,并能够完成一些小的项目。通过刻意训练提高程序设计能力应该从基础做起,首先自己学习基础知识,然后在不断地尝试中学习,走出舒适区,致力于解决问题,以问题为导向进行java学习。

原文地址:https://www.cnblogs.com/8cloud33zzk/p/8414294.html

时间: 2024-10-15 21:05:34

20165103学习基础和C语言基础调查的相关文章

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

学习基础和C语言基础调查 读做中学有感 读了老师的推送,通过邹欣老师的博客中对老师和学生的关系比作教练和学员的阐述,这里重点为我们阐述了「做中学(Learning By Doing)」的重要性. 套路(Kata)指针对某一种特定技术或技能进行重复性的练习,从而将其熟练掌握.这个概念借鉴于武术,指的是可以独自或多人共同练习的一系列动作.招式. 做中学(Learning By Doing)从老师角度讲就是「项目驱动教学法」.学生在实践中发现问题,解决问题,在迭代中提升. --引用自<优秀的教学方法-

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

学习基础和C语言基础调查 ====== 一,技能学习经验体会 要问我有什么技能比大多数人强,这个我还真的不敢说,虽然我在很多方面都有自己的一些了解,比如乐器和绘画,但也都是一知半解,并没有在某一方面出类拔萃,自己虽然在某些方面强于一些人,但毕竟只是小有发展,更别说什么90%了,对于这个问题我想我们每个人都是没有勇气也没有资格说出来的,毕竟人外有人,因为这个问题和90%的条件确实没什么意义,所以我就随便说说我比部分人强的地方,在一些兴趣爱好和特长方面我认为唯一能拿得出手的就是萨克斯,虽然才学了两三

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

20165230 学习基础和C语言基础调查 技能学习经验 我擅长弹钢琴.小时候我曾上过很多兴趣班,比如钢琴.跳舞.书法.绘画等等,唯一坚持至今的只有钢琴.仔细一算学习钢琴至今已有12年,不能说已经精通,但已比大多数人更加熟练这项技能.对于弹钢琴最重要的就是需要反复的练习和有持之以恒的毅力.最开始练习弹钢琴时是非常枯燥无味的,因为练习的曲目是最基本最简单的音符,并不能一开始就练习你喜欢的曲目.只有通过不断的练习抬指和固定手型,才能拥有扎实的基本功,进而能在日后练习难度更大的曲目时得心应手.这和娄老

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

20165235 学习基础和C语言基础调查 首先第一个问题:你有什么技能比大多人(超过90%以上)更好?感觉很难回答这种问题,其实我对很多东西挺感兴趣的,如果非要拿出一种比较突出的技能的话我感觉就是象棋和书法.不敢说比大多数人更好,但是在业余爱好者中间相对来说还是不错. 针对这个技能的获取你有什么成功的经验?若想获取这种技能首先最重要的是对这种技能的兴趣,因为兴趣是人最好的老师.因为我对象棋书法的热爱导致我想去学习.其次是坚持,若想真正的掌握一门技能就得去坚持练习,不断的增进自己的技能. 对于第

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

学习基础和C语言基础调查 做中学体会 阅读做中学之后,了解老师关于五笔练习.减肥.乒乓和背单词的经历,不禁联想到自己学古筝的经历. 成功的经验 兴趣 我其实小时候学过一段时间古筝,但是那时候是因为父母的要求,自己并不喜欢,后来就终止了.直到再过了几年自己对于古筝产生了兴趣,主动要求重新学习古筝,一直坚持到了最后. 专注 说来惭愧,我练琴从来不是定时定量的,而是根据心情和专注程度来,对于我来说,心不在焉的练习两个小时的效率没有专注练习半小时高.状态不好时当天我会放弃练习,状态好的时候连续练习几个小

20165318 预备作业二 学习基础和C语言基础调查

20165318 学习基础和C语言基础调查 技能学习经验 我们这一代人,或多或少的都上过各种兴趣班,舞蹈钢琴画画书法,我也是如此.可这些技能中,唯一能拿的出手的就是舞蹈了.按照<优秀的教学方法---做教练与做中学>中的标准:一项技能的掌握程度分为:新手/高级初学者/合格者/精通/专家.我认为自己尚且只达到合格者的程度,并不能说自己的水平凌驾于大多数人之上. 从4岁学到14岁,这些年的学习,还是带给我很多启发,要学好一项技能,要具备以下几点: 兴趣:兴趣是最好的老师.我小时候就对舞蹈很有兴趣,看

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

学习基础和C语言基础调查 一.一种比大多数人(超过90%以上)更好的技能 说句实话,我还没有那种特别特别自信的.说我能拿得出手的.所谓能超过百分之九十以上的人的技能.毕竟人外有人,天外有天. 姑且算上象棋吧,能下的过一些人,碰上一些每天都在下的那种老爷爷可能还是不太招架得过来. 至于说我所积累的经验,总结一下,大量的实战经验和灵活的思维模式. 首先说这头一点吧,实战经验就是大量的练习.有的人下棋就喜欢背棋谱,不过我觉得纸上得来终觉浅,或者说,我觉得真刀真枪地干上一局比背棋谱进步得快.其实....

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

学习基础和C语言基础调查 一.技能学习与特长 你有什么技能比大多人(超过90%以上)更好? 我的爱好和技能说实话挺广泛的.如果要挑出来一个很擅长的话,我觉得应该是钢琴. 针对这个技能的获取你有什么成功的经验? 首先有一定的兴趣和追求,这个能让我产生继续下去的动力和勇气,也是我不断练习的原因. 其次就是要有耐心,只有不停的练习和思考,能力才会提升,技能才会变得娴熟. 最后就是坚持,学习过程中有很多瓶颈,只有坚持下去,才会到达成功的彼岸,最终在人群中脱颖而出. 与老师博客中的学习经验有什么共通之处?

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

20165323 学习基础和C语言基础调查 一.技能学习心得 1.你有什么技能比大多人更好? 我觉得我羽毛球打的还行,不能说打得比大多数人好,但是对于一些打羽毛球的要领还是掌握的. 2.针对这个技能的获取你有什么成功的经验? 想要打好羽毛球,首先你得建立起对它的兴趣.你对打羽毛球这件事产生了兴趣,你才能够更加投入地去练习它,这样子你的效率才高.如果你对这件事没有兴趣,那么你对于这件事的态度或许只是在应付而已,这样子就不会有任何的意义,也很难提升自己的水平.其次,便是坚持.常言道:"宝剑锋从磨砺出