20155334的第二次随笔

1. 你有什么技能比大多人(超过90%以上)更好?

不好意思,我不是统计局的人,没办法去计算,更不会无聊到去比较这些东西。我知道自己会做哪些事儿,哪些事儿我会做的比较好,哪些事儿是我需要去改正的,经此而已。

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

经验也谈不上,只能说在做些事儿的时候遇到过什么。首先我一旦对某些事儿感到有兴趣的时候我会乐此不疲的去完成它,哪怕废寝忘食,这和追女生是同样的道理。其次一旦我要去做,一定会遇到很多的问题,但我会去想办法,无论是自己的还是别人的,自己的叫原创,别人的叫借鉴,尽量原创是我乐趣的来源。

3. 与老师博客中的学习经验有什么共通之处?

天下所有的事儿都有一条亘古不变的定律,但我最喜欢姚明总结的那句,你做了不一定会成功,但你不去做就一定会失败。至于某件事的成功与否,我也喜欢另一句俗语,天下无难事,只怕有心人。再简单点就持之以恒,方能水滴石穿。

4. 有关C语言学习的调查

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

回想起当初C语言的学习,主要集中在平时的课堂上以及课后的作业试验。但与其他的相比最大的差距在于没能够坚持下去,仅仅把这当做一门课程去学,没有当做真正的兴趣去从事,去钻研,去理解。被动的,机械的去完成每一件老师布置的任务,慢慢的好像变成了一件无聊的负担。

  • 目前为止估算自己写过多少行C代码?理解的情况如何?

估计有1500左右吧,理解的马马虎虎吧。

  • 学过了C语言,你分的清数组指针,指针数组;函数指针,指针函数这些概念?
  • 指针数组:是用于存储指针的数组。
  • 数组指针:是指向数组的指针。
  • 函数指针:它是一个指针,只是这个指针指向的是一个函数。
  • 指针函数:它是一个函数,只不过这个函数的返回值是一个地址值。
  • 学过了C语言,你明白文件和流的区别和联系吗?如何区分文本文件和二进制文件?如何编程操作这两种文件?

文件是计算机管理数据的基本单位,同时也是应用程序保存和读取数据的一个重要场所。每个文件都有文件名、文件所在路径、创建时间及访问仅限等属性。流是字节序列的抽象概念,流提供一种向后备存储器写入字节和从后备存储器读取字节的方式。一般判断一个文件是否是二进制文件,只是判断一下文件的内容中是否含有0x00-0x07这八个字符内容,如果有的话,就是二进制文件。

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

面向过程程序设计是一种以事件为中心的编程思想。

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

模块是指一个程序里面负责完成不同任务的方法,各模块之间紧密配合完成程序的职能。

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

一个软件是由多个子程序组装而成,,一个程序由多个模块(方法)构成,而内聚就是指程序内的各个模块之间的关系紧密程度,耦合就是各个外部程序(子程序)之间的关系紧密程度。
高内聚是指模块之间的关系要紧密,这样出错就比较少。低偶合是指子程序间的关系要简单,否则就会产生更多的意想不到的错误。
减少各模块之间的接口,但在运行过程中要相互调用。

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

    void Sort(int a[N], int n)
    {
        int i,j,k;
        for(i=0;i<n-1;i++)
        {
            k = i;
            for(j=i+1;j<n;j++)
            {
                if(a[j]>a[k]) k = j; 
            }
            if(k!=i)
            {
                a[i] = a[i]^a[k];
                a[k] = a[k]^a[i];
                a[i] = a[i]^a[k];
            }
        }
        printf("\nresult of sorting:\n");
        for(i=0;i<n;i++)
        {
            printf("%d\t",a[i]);
        }
        printf("\n");
    }
    void Search(int a[N], int n)
    {
        int i,flag=0;
        for(i=0;i<n;i++)
        {
            if(a[i]==5)
            {
                flag = 1;
                break;
            }
        }
        printf("\nresult of searching:\n");
        if(flag)  printf("Found 5.\n");
        else    printf("Not found 5!\n");
    }
    void Copy(int a[N], int b[N], int n)
    {
        int i;
        for(i=0;i<n;i++)
        {
            b[i] = a[i];
        }
        printf("result of copy:\n");
        printf("a[N]:");
        for(i=0;i<n;i++)
        {
            printf("%d\t",a[i]);
        }
        printf("\n");
        printf("b[N]:");
        for(i=0;i<n;i++)
        {
            printf("%d\t",a[i]);
        }
        printf("\n");
    }
    int main(void)
    {    
    int i,n,ret;
    int a[N],b[N];
    printf("How many elements do you want to input:");
    ret = scanf("%d",&n);
    if(n<=0 || ret!=1)
    {
        printf("Wrong! Please input a positive integer.\n");
        return 0;
    }
        printf("Please input a[N]:\n");
        for(i=0;i<n;i++)
        {
            scanf("%d",&a[i]);
        }
        Copy(a,b,n);
        Search(a,n);
        Sort(a,n);
        return 0;
    }
  • 写一个程序,统计自己C语言共写了多少行代码

见上。

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

调试程序时,在代码某处设置断点后,程序运行到该处代码时则会自动停止,接着便可在此进行逐步调试了。

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

至少能够独立自主地编出自己想要的可以实现目的的正确程序,其次可以适当创新,灵活运用,在以后的工作中自行解决相关问题,提高工作效率和质量。

6. 毕业后大多数人从事的工作的要求是“提笔能写,开口能说,问策能对,遇事能办”,非常重要的技能是公文写作能力,你觉得自己写作能力如何?要怎么提高?

我觉着自己的写作能力只是处于刚刚够用的程度,面对更高层次的水平目前只能望洋兴叹,但我相信只要努力练习,多多思考,只要接触的多了,练得多了就能够快速的提高。现实世界对一个人的文笔文风改变很大,就在某些事发生的一瞬之间。

posted @ 2016-12-17 17:35  T_T>_<20155334  阅读(139)  评论(5编辑  收藏  举报