zoukankan      html  css  js  c++  java
  • 第一次撰写博客——一切的一切才刚刚开始

    前 言

    2017年1月10日晚20:23,经过反复的思考以后,我觉得不能够再继续拖沓下去,开博第二天,也许是时候开始构建一下我的第一篇博客了。写博客,是我之前没有接触过的事情,更进一步说,我基本没在网上写过什么长文。鉴于目前自己的状况,我找了些别人的博客拜读了一番,好吧,我只能说自己写的实在不能像他们的文章那样,兼有硬件上的条理清晰,又具有软件上的技术性支持(说实话我对目前自己的编程能力极不自信,坦白说应该是很糟糕)。

    对个人第一篇博客的看法

    问题重新转移到这篇博客本身——一份老师布置下来的寒假作业,但我并不怎么觉得它是份特别扰人的作业,相反的,倒像是成了一种基于彼此交互的途径,对自身以及其他人深度认识的开始,是的,只是开始。

    在人生技能道路上,你有没有专长的高超技能获取的成功经验?

    这是我今晚思考的第一个问题——我的专长。这是个挺难回答的问题,尤其是对我这类人而言,往往想做的事情很多,兴趣爱好广泛,却很少能够在自己想努力的方面精通一二。我很认同我现在的同学对我的忠告:“你总是什么都不深入了解就去行动,总是想要直接跳过入门就一步到位。”有时候,旁人的眼光会帮助你认识自己忽略的部分,我对此心服口服。回过头来看看以往的自己,乒乓球、排球、国画、摄影......似乎我之前努力想要习得的技能,每一项都只能够算是掌握,会两把刷子却并没有进阶到精通的水准(超过70%以上的人),现在想想有太多的遗憾。至于我真的拿得出手的技能,除了动手能力强之外,我也不知道自己还剩下什么。

    我喜欢独自一人在空闲的时间里瞎忙活:篆刻印章、制作模型等等,这些活动似乎需要学习掌握的相关技术并不是很多,也许只是需要你投入心思,将你脑中既定的构思转变成外放的实物,明确了目标以后就要投入精力与时间罢了。举我最近忙活的篆刻来说吧:

    1. 篆刻的第一步往往是想好自己想要篆刻的内容,我刻印往往是需要基于某种冲动的说,为某人,为某事。在想好自己的内容后往往需要你去筛选出自己觉得满意的相应字体,这是道需要花时间的工序,“怎么个样式?这是否是自己想要表现得效果?”
    2. 选好自己所想要表达的内容之后,就开始磨平石头,使用2B铅笔摹字,之后就得开始正式干活。
    3. 刻出个雏形以后,还得不断挖深,虽然这并不影响印出的效果,却可以改善刻印本身的美感,是的,只是为了让印章看起来好看一些些而已。

    我不太懂这些对于其他人而言算不算的上是一种突出技能,但在我眼里,每一件我付出心血的作品都是一份艺术,一份专属我的存在,没有优劣等级之分。

    (未来得及上色,使得作品大打折扣,有些遗憾在)

    在我进入大学的第一个学期里,我还接触了微信的制作,在基本了解秀米平台的一些操作以后,我就开始了自己制作部门微信的工作。我很享受独自一人在斟酌排版、构思设计以后出来的成品。在制作前好好设计构思,筛选出自己需要的图文;在制作中细细斟酌,不断去调整宽高;在制作后不断改善,修修补补,以达到自己需要的效果。其实很多的事情,投入时间往往能收获满意,而之前我所遗憾的那些不精通,其实原因也就出在了这里。总体看来,我的坚持是不够持久的,这个毛病不管是现在还是之后,无疑都是那么的需要迫切去解决QAQ......

    有关C语言学习的调查(自述糟糕的历程)

    大一接触的C语言,讲心里话,让我对于自己的能力产生了怀疑,我不止一次的问过我周围的人:“你觉得我现在学的水平算是达标了吗?”、“为什么我总是想不出来思路,写不出你那么流畅有条理的代码?”、“为什么我这么糟糕”等等。我对自己大一的C语言学习真的很失望,我不知道这会不会对以后自己的编程生涯产生多少坏影响,至少我懂得我与班级里其他人(学期开始还是同起跑线的小白们)已经拉开有不小的差距。为什么会是这样的结果?我也不止一次的进行着自我的反思。一是上课效率的问题:大一没有良好的作息时间,使得自己无论哪节课都打不起精神甚至打瞌睡,上课效率大打折扣,我坦白自己确实没有划分好学与玩的分界线,于是出现后来死循环的坏影响(其他课程也难逃一劫的糟糕);二是课下的时间花费的太少,被娱乐挤占了太多时间(类似社交网络、听音乐、做闲事等等),我得声明一下我不怎么打电脑游戏,似乎这一点看来很惊奇,但事实是不打游戏的学生也不一定是好学生。课下、回宿舍、晚自习后,我在打代码上花的时间现在看来真的是太少太少,每次总会被一两道题目的解决麻痹自我,自认为自己的能力足够驾驭,可事实说明一切,C语言班级倒数,我都觉得这样糟糕透顶的结果合情合理,是自己的自以为是、缺乏行动和不够刻苦努力造成的恶果。我就是这样一个人,毛病在那里,越积越多却改变很少,最后使自己腐烂掉。这是我一学期学习以来的深刻教训。

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

    目前为止我打的代码行数我不太确定,上百行是肯定有的,其中大部分还是课程教授过程中的作业要求(就连其中的作业都还有一部分没有完成,课外自己的学习就更少了),至于理解嘛不敢说太好,但总体上练习过的代码总会有思路在那里。

    ## 问题2:学过了C语言,你分的清数组指针,指针数组;函数指针,指针函数这些概念吗?.

    看到这个小问题我又心里泛起一阵的自责,指针上是基本上没有掌握的,但从字面语法上还是可以给出我对于这四个概念的解读:依照后缀可以大致理解

    • 数组 指针:指向数组地址的指针,起指向的作用;
    • 函数 指针:指向函数地址的指针,起指向的作用;
    • 指针 数组:一种数组类型,存放的是指针元素;
    • 指针 函数:结果指向的一类函数;

    以上都是我的个人理解,如果有误的还请指出。

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

    一脸懵逼,怎么办,翻开我的《C程序设计》。依照书中原话,“文件一般指存储在外部介质上数据的集合”,联系上作为音乐发烧友的我的理解,文件就是那些存储在前端中的音频等,是一种存储单位;“通常将输入输出(数据)形象的称为流”,前端上的I/O口实际上就是在实现“流”(即数据的传送与接收),因此流可以算是一种通道来负责传输;他们的联系是区别和联系是使得静态的“文件”经由动态的“流”传到另一个设备上进行下一步的运行。

    文本文件和二进制文件是对数据文件的两项分类,二进制文件是不加转换的就输出到外存中,而文本文件则需要经过进行转换后以ASCII代码的形式存储在外存当中,这两种文件之间的转换实质就是二进制形式与ASCII码之间的转换

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

    二脸懵逼,怎么办,参考一下度娘的回答然后给出自己总结。面向过程程序设计,算是一种编程开发的方法。它分析问题并进行划分步骤,然后利用函数去将每一个步骤实现,一步一步地推进直至解决问题。类似于一条流水线式的安排妥当,各分其职,实现产品的生产。

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

    在我的理解里,模块就是将大的整体进行划分成的小对象,它由多行代码组成来实现主程序里的分程序,例如main函数里对外部函数的调用。我想说“写多个源文件的程序”这还是第一次听到,更别说之前会想着去用上了。但是大概看了一下,实现的是在某个程序里实现多个源文件的调用,类似于#include"xx"。

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

    “高内聚,低耦合”,个人看法是:将混乱的代码进行模块化后,在模块的内部,为了共同的目的而分成的各个元素之间紧密联系着,类似蛛网上的结点牵连着好多的蛛丝,这就是我所理解的“高内聚”;而模块之间各司其职,各个之间有种似有似无的恋爱关系,有联系却尽可能去独立的存在,这就是我所理解的“低耦合”。

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

    把数组A的内容复制到数组B中(以下各段代码中的“n”均为可变的某个自然数,暂定为10)

    #include<stdio.h>
    #define n 10 
    int main()
    {
        int a[n],b[n],i;
        for(i=0;i<n;i++)
        {
            scanf("%d",&a[i]);
            b[i]=a[i];
        }
        for(i=0;i<n;i++)
            printf("%d",b[i]);
    return 0;
    }
    

    查找整数数组A中有没有数字5

    #include<stdio.h>
    #define n 10 
    int main()
    {
        int i,j,a[n],f=0;
        for(i=0;i<n;i++)
            scanf("%d",&a[i]);
        for(j=0;j<n;j++)
            if(a[j]==5)
                {
                      f=1;
                }
    if(f) printf("有5");
    else printf("没有5");
    return 0;
    }
    

    数组排序

    #include <stdio.h>
    #define n 10
    int main ()
    {
        int a[n];
        int i,j,k;
        printf("input %d number:
    ",n);
        for(i=0;i<n;i++)
            scanf("%d",&a[i]);
            printf("
    ");
        for(j=0;j<n;j++)
            for(i=j+1;i<n;i++)
                if(a[i]>a[j])  //从小到大:a[i] > a[i+1] ;从大到小:a[i] < a[i+1]
                {k=a[j];a[j]=a[i];a[i]=k;}
        printf("the sorted numbers :");    
        for(i=0;i<n;i++)
            printf("%3d",a[i]);return 0 ;            
    }
    

    问题8:你知道什么是断点吗?给出自己调试程序的例子。(可以截图贴图说明).

    断点,程序运行过程中执行到此停止的地方,之后可往下一步步进行调试程序。我自己没有用过断点调试,所以没有调试程序的例子可以给出进行参考。

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

    C语言的学习没能够达到自己想要的程度,甚至学的有点糟糕,所以我对《面向对象程序设计》的学习目标就是能够在问题给出以后有清晰的思路,能够对具体编程达到熟练地掌握的境地,不做一个让自己烦恼的吊车尾。首先得做好自己,在熟悉课本以及认真听讲(上课不打瞌睡不走神)的基础上,去接触一些课外的补充,花时间去训练自己的解题能力,另外在某些方面可以向比自己能力高的人讨教学习。代码真的是要求在实践中去总结东西,经过教训以后我深刻的认清楚以打代码的形式来自我领会是多么的重要,亦即“做中学”来不断去提高自我,取得我想要的成果——不将就

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

    我对自己的写作能力还是报以自信的,但前提是保持看书习惯以及练笔的基础上才敢这么说。因为写作往往是需要知识的积累.和流畅的行文.,不看书久了,往往会对文字的运用上有些生疏,通过去阅读,往往会潜移默化人性,接触久了,你就会习惯性的有生动顺畅的思路冒出来,表达变得可诙谐,可严谨,可隐晦内敛,可直抒胸臆,所以不放弃阅读习惯总归是不会有坏处的,而要达到好的写作,练笔几篇找找感觉也是有必要的,不必刻意的去为了写些什么而写,只要在你有些触动有些感想时去表达出来,在情感释放之下写作永远比在压抑情感去硬生出文章来要快活的多。(截稿于 2017年1月12日04:28)

  • 相关阅读:
    Markdown编辑器语法指南2
    python文件读写的学习
    K:图相关的最小生成树(MST)
    K:哈弗曼树
    K:树、二叉树与森林之间的转换及其相关代码实现
    K:二叉树
    K:树与二叉树
    KandQ:那年,那树,那些知识点
    K:java中的安全模型(沙箱机制)
    K:java中的RMI(Remote Method Invocation)
  • 原文地址:https://www.cnblogs.com/S031602219/p/6275866.html
Copyright © 2011-2022 走看看