学习基础和C语言基础调查
你有什么技能比大多人(超过90%以上)更好?
看到题目,我陷入了迷茫:我到底有什么方面可以做的比90%的人更好呢。思来想去,可能是动手能力这一方面吧。小时候我就很喜欢对玩具进行拆解、组装等,以及做一些简单的手工。到了中学,各种实验让我非常着迷,当遇到一个感兴趣的实验,我会尽可能、尽快地去完成,会自主地去查询各种资料,只是为了成功完成这实验。
成功的经验谈不上,但是我认为能支持我做这些的动力就是兴趣。只有对某样东西产生浓厚的兴趣,我才会不厌其烦的去做这件事直到达到我的目的。而这一理论也可以用到学习中:当一个人对学习产生兴趣时,是不需要别人去催促着学的,他会自发地去寻找能学好的方法:如果对学习不感兴趣的话,无论别人怎样在后面推,他也只是扶不起的阿斗而已。所以,我认为在学习的过程中,培养兴趣这一环是非常关键的。
有关C语言学习的调查
你是怎样学习C语言的?
和大多数同学一样,我对C语言的学习建立在课本、老师的PPT以及C语言题库这三个方面上,通过上课听讲,课下借助老师的PPT上的知识去做题这个流程来学习。教训的话,应该就是我上面提到的关于兴趣方面吧。C语言这门学科我没有培养起兴趣,自我感觉比较失败,到临考的时候基本上是机械地去刷题而不是寻求对题目的理解。
目前为止估算自己写过多少行C代码?理解的情况如何?量变引起质变,如何平衡质和量?
之前的一篇博客中我也写到了,整个C语言的学习过程中我大概只写了2000多行代码,大部分是为了刷题而硬凑的,理解状况也就可想而知了。现在想想的话,只有量变才能引起质变,如果连“量”都达不到的话,又谈何“质变”。但是,一味刷题也是不可取的,要学会在理解做过的题的基础上寻求更高难度的突破,这也就需要我们做题既要保量,也要保质。有质有量且有目的性地练习才是真正有效的练习。
学过了C语言,你分的清数组指针,指针数组;函数指针,指针函数这些概念吗?
- 数组指针:本质上是指针,意为“指向数组的指针”。
- 指针数组:本质上是数组,意为“储存指针的数组”,其元素都是指针。
- 函数指针:本质上是指针,指向一个函数。
- 指针函数:本质上是函数,其返回类型是指针。
学过了C语言,你明白文件和流的区别和联系吗?如何区分文本文件和二进制文件?如何编程操作这两种文件?
不知道。
学过了C语言,你知道什么叫面向过程程序设计吗?它解决问题的方法是什么?
我认为所谓面向过程程序设计,体现的是一种“大事化小小事化了”的思想,即把大问题化为能够解决的小问题,通过一步步解决小问题来最终解决大问题。而这每一个小问题的解决是通过函数来实现的。
在C语言里面,什么是模块?你写过多个源文件的程序吗?
- 在C语言中,把一个大的、整体的过程分散为一个个小的、执行特定功能的部分,这个部分就是模块。
- 没写过多个源文件的程序。
学过了C语言,你知道什么是“高内聚,低耦合”吗?这个原则如何应用到高质量程序设计中?
不是太明白。。
学过了C语言,你如何把数组A的内容复制到数组B中?如何查找整数数组A中有没有数字5?如何对整数数组A进行排序(从小到大,从大到小)?写出相应的程序。
#include <stdio.h>
int main()
{
char a[100] = "\0",b[100] = "\0";
int i = 0;
printf("输入一行字符:\n");
scanf("%s",a);
for(i = 0;a[i] != '\0';i++){
b[i] = a[i];
}
printf("%s\n",b);
return 0;
#include <stdio.h>
void main()
{
int x,i,find=0;
int a[10]={7,3,9,1,4,5,6,2,8,0};
printf("请输入所查数字: ");
scanf("%d",&x);
for(i=0;i<10;i++)
if(x==a[i])
{find=1;break;
}
if(find==1)
printf("%d在所查数组中\n",x);
else
printf("%d不在所查数组中\n",x);
}
#include<stdio.h>
void main()
{
int a[5]={0};
int i,j,t;
printf("请输入五个整数\n");
for(i=0;i<5;i++)
scanf("%d",&a[i]);
for(i=0;i<5;i++)
for(j=i+1;j<5;j++)
if(a[i]<a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
for(i=0;i<5;i++)
printf("%d ",a[i]);
}
#include<stdio.h>
void main()
{
int a[5]={0};
int i,j,t;
printf("请输入五个整数\n");
for(i=0;i<5;i++)
scanf("%d",&a[i]);
for(i=0;i<5;i++)
for(j=i+1;j<5;j++)
if(a[i]>a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
for(i=0;i<5;i++)
printf("%d ",a[i]);
}
写一个程序,统计自己C语言共写了多少行代码。
不会写。。。
你知道什么是断点吗?给出自己调试程序的例子。
在程序某处设置断点之后,当程序运行到此处时会停止运行。
参考怎样快速阅读一本书,快速阅读一下云班课中有PPT,每章提出一个问题
- Java中什么是反编译?什么是类?
- 关于int型常量赋值给byte型变量时,精度缺失的问题。
- boolean型是指?
- 编写JAVA程序是否有一定的模板?
- 抽象类是什么?
- 不理解接口和abstract类的具体区别
- Java中的断言调试是将断言语句插入在代码后面直接就可以调试?怎么算启动断言?
- String类与StringBuffer类的区别与联系?
- 如何将类、窗口、组件、布局等内容结合联系起来?
- 文件字符怎样进行输入输出
- 数据库该怎样掌握其方法?
- 进程线程区分以及如何建立多线程?
- UDP和TCP是什么?
- 矩形形状的组件其默认值为(0,0),是人为规定还是系统默认?
- 如何使用各种集合框架类?
对比C语言的学习,你对《Java程序设计》的学习有什么具体目标?如何通过刻意训练提高程序设计能力和培养计算思维?如何通过“做中学”实现你的目标?
第一段学习C语言的经历对我来说并不愉快,这直接导致我在学习更新课程的同时必须以自学的形式学习C语言,也算是一种自作自受吧。对于这学期Java的学习,我觉得首先应该从培养兴趣做起。比如这段时间我对于安装虚拟机产生了很大的兴趣。(当然,与此同时也被整的死去活来)假期内我不会放松对于Java的学习,希望在返校正式开始学习的时候我可以做到不被大部队拉下。遇到不会的问题先自己去尝试这从各种途径获得解决办法,如果问题实在无法自主解决则向老师请教,不拖着。希望能在从现在开始的Java学习中取得很大的收获。