码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2018-02-02 21:51:22      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:arc   efi   ret   整数   方法   rac   语句   数据库   logs   

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

  • 首先第一个问题:你有什么技能比大多人(超过90%以上)更好?感觉很难回答这种问题,其实我对很多东西挺感兴趣的,如果非要拿出一种比较突出的技能的话我感觉就是象棋和书法。不敢说比大多数人更好,但是在业余爱好者中间相对来说还是不错。
  • 针对这个技能的获取你有什么成功的经验?若想获取这种技能首先最重要的是对这种技能的兴趣,因为兴趣是人最好的老师。因为我对象棋书法的热爱导致我想去学习。其次是坚持,若想真正的掌握一门技能就得去坚持练习,不断的增进自己的技能。
  • 对于第三个问题:与老师博客中的学习经验有什么共通之处?在老师的博客中《优秀的教学方法---做教练与做中学》也包含了相关的内容

    技能的提升要「刻意训练」
    低水平重复是不行的,训练时间再长都没用
    要摆脱「舒适区」,进入「学习区」学习
    要循序渐进,不能进入「恐慌区」
    --引用自《优秀的教学方法---做教练与做中学

  • 我们每个人都应该学会“做中学(Learning By Doing)”针对某一种特定技术或技能进行重复性的练习,从而将其熟练掌握,并且要在练习的过程中进行思考,才能将自己所学的转化为自己的知识。

有关C语言学习的调查

  1. 你是怎么学习C语言的?(作业,实验,教材,其他),与你的高超技能相比,C语言的学习有什么经验和教训?在学习C语言的时候首先在上课的时候认真的听讲,然后在下课之后做一些练习(敲一遍课本上的代码或做校园网上的题),把在课堂上的尽可能的吸收为自己的东西。想学好一门技能最重要的就是要不断练习,要保证量,因为量变是质变的前提条件,但是也不能一昧的寻求量,要还要保证每次的练习是有效的。
  2. 目前为止估算自己写过多少行C代码?理解的情况如何?量变引起质变,如何平衡质和量?我可能至少写过3000行以上的代码,比较难得地方还是有的,但总体而言还是不错的。在每次的C语言练习中要保持量,但也不能仅仅保证量,也要关注质量,在高效的多次练习下才能有所收获。
  3. 学过了C语言,你分的清数组指针,指针数组;函数指针,指针函数这些概念吗?
  • 数组指针:指向数组的指针
  • 指针数组:数组内的元素都是指针,存储指针的数组
  • 函数指针:指向函数的指针包含函数的地址,调用函数
  • 指针函数:函数声明其返回值为某个指针时,给函数返回一个地址,用于需要指针的表达式
  1. 学过了C语言,你明白文件和流的区别和联系吗?如何区分文本文件和二进制文件?如何编程操作这两种文件?关于这方面的知识我不是很了解,我会通过百度去了解。
  2. 学过了C语言,你知道什么叫面向过程程序设计吗?它解决问题的方法是什么?面向过程程序设计是以什么正在发生为主要目标进行编程,解决问题的方法是要对问题解决的过程进行编程去解决。
  3. 在C语言里面,什么是模块?你写过多个源文件的程序吗?
    模块是将程序依照负责部分不同,拆分成多个部分,然后再拼装成完整的程序。没有写过源文件程序。
    学过了C语言,你知道什么是“高内聚,低耦合”吗?这个原则如何应用到高质量程序设计中?高内聚是指一个模块内各元素联系紧密,低耦合是指模块之间独立性强,我们在设计时应尽量去满足这个基本原则,使各个模块间功能独立、程序设计思路明确。来自于《什么是“高内聚,低耦合”》
  4. 学过了C语言,你如何把数组A的内容复制到数组B中?如何查找整数数组A中有没有数字5?如何对整数数组A进行排序(从小到大,从大到小)?写出相应的程序。
    数组A复制到数组B:
#include <stdio.h>
#include <stdlib.h>
main()
{
    char a[200] = "\0",b[200] = "\0";
    int i;
    printf("Input:\n");
    scanf("%s",a);
    for(i = 0;a[i] != ‘\0‘;i++)
    {
        b[i] = a[i];
    }
    printf("%s\n",b);
}

查找是否存在5:

#include <stdio.h>
#define N 100
int main()
{
    char a[N] = "\0";
    int i;
    printf("Input:\n");
    scanf("%s",a);
    for(i = 0;a[i] != ‘\0‘;i++)
        if(a[i]==5)
            printf("5 is existent.");
    return 0;
}

升序如下,降序同理

#include<stdio.h>
main()
{
    int i, j, temp, a[10];
    printf("ten numners:\n");
    for (i=0;i<10;i++)
        scanf("%d",&a[i]);
    printf("\n");
    for (j =0; j<9;j++)
    {
        for (i=0;i<9-j;i++)
        {
            if (a[i]>a[i+1])
            {
                temp =a[i];
                a[i]=a[i + 1];
                a[i+1]=temp;
            }
        }
    }
    printf("The sorted numbers:\n");
    for (i = 0; i < 10; i++)
        printf("%d ", a[i]);
    printf("\n");
}

  1. 写一个程序,统计自己C语言共写了多少行代码。
    首先我并不知道该怎么写这个代码,我想到可以计算"/0"或是“;”的个数。我学习了百度上其他人的代码,首先要抓住一个关键词EOF,这是一个计算机术语,为End Of File的缩写,在操作系统中表示资料源无更多的资料可读取。资料源通常称为档案或串流。可以理解为换行符。
#include<stdio.h>
int main()
{
    int n = 1;
    int c;
    while((c = getchar())!=EOF)
    {
        if(c == ‘\n‘) n++;
    }
    printf("%d\n",n);

    return 0;
}
  • 但是这段代码并不正确,无法正真的统计出代码行数,希望新学期得到老师的指导。
  • 你知道什么是断点吗?给出自己调试程序的例子。 断点就是程序执行到断点处会停止。技术分享图片

  • 阅读了老师的博客怎样快速阅读一本书,并且看了各章ppt后,对每章提出了以下问题。
  • Java各章问题
  1. Java中如何编写和保存源文件?如何正确的理解反编译?
  2. 如何正确理解两个相同类型的数组如果具有相同的引用,它们就有完全相同的元素?
  3. 怎样正确利用“异或”运算?
  4. 类与C语言中结构体的区别是?
  5. abstract类使用意义以及无法理解开闭原则
  6. abstract类与接口的区别?
  7. 使用try~catch语句来处理异常与C语言case~default语句的区别?
  8. Integer类调用其类的方法?
  9. JFrame() 创建窗口的方法
  10. 字节输入(出)流与字符输入(出)流如何连接?
  11. 连接MySQL数据库的方式
  12. 进程与线程的区别是?
  13. 如何读取URL中的资源?
  14. 如何进行图形的布尔运算?
  15. 链表的使用(难点)。
  • Java学习目标
  1. 首先要独立思考,学会独自解决问题。实在解决不了的问题通过网络,老师,同学等去解决。
  2. 要学会大量的敲代码,努力要把课本上的代码敲一遍,孰能生巧,加强对代码的理解。
  3. 独立的去编写一些代码去解决一些实际问题,平时也要去看一些算法的书,学习一些算法,增强自己代码的编写能力。多看一些关于本专业的书,加强自己的专业知识。
  4. 要学会去坚持,并且严格要求自己,只有这样才能学有所成。

    程序设计入门,最有效的方法要积极主动敲代码。
    --引自与《积极主动敲代码,使用JUnit学习Java

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

标签:arc   efi   ret   整数   方法   rac   语句   数据库   logs   

原文地址:https://www.cnblogs.com/qy20165235/p/8407044.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!