20172303 2017-2018-2 《程序设计与数据结构》第1周学习总结
教材学习内容总结
- 复习了上学期电子政务导论课程中学习的一些知识
- 了解了Java编程语言的一些基本内容
- 学会了一些简单的程序编写
教材学习中的问题和解决过程
- 问题1:编程项目PP1.8中的“居中对齐”不会做
- 问题1解决方案:通过翻书发现教材41页有提及,使用 即可。 是换行, 相当于Tab。
代码调试中的问题和解决过程
- 问题1:因为我是在老师在蓝墨云上传jdk之前自己下的java,第一次下载完毕之后找不到javac.exe
- 问题1解决方案:由于第一次只安装了jre所以没有javac.exe,重新到官网上下载安装了jdk。我发现初学者似乎都很容易混淆这几个概念所以去查了一下:
- JDK : Java Development ToolKit
- JRE:Java Runtime Environment
- JVM:Java Virtual Machine
- 在实际开发过程中,我们首先编写Java代码,然后通过JDK中的编译程序(javac)将Java文件编译成Java字节码,JRE加载和验证Java字节码,JVM解释字节码,映射到CPU指令集或O的系统调用,完成最终的程序功能。(参考资料见末尾)
- 问题2:在登陆Linux时提示储存空间不足
- 问题2解决方案:第一次按照答疑中给的教程做没有成功,最后使用了
sudo apt-get autoclean
清理垃圾之后又有了储存空间。 - 问题3:使用
./statistic.sh
无法运行统计代码量的程序 - 问题3解决方案:通过询问同学后使用
sh statistic.sh
成功统计代码量。
代码托管
(statistics.sh脚本的运行结果截图)
上周考试错题总结
- 错题1:Linux Bash中, 可以使用man printf查看C语言中printf函数的帮助文档。 (x)
- 理解情况:
man 3 printf
才是真正的查询C库函数里的printf函数 。 - 错题2:Linux Bash中,强制删除test文件的命令是(rm -f test )。
- 原因:我写答案时只写了
rm -rf
,没有看清题意 - 理解情况:-f代表强制删除,-r代表删除目录。所以-rf代表强制删除目录或文件。
- 错题3:Linux Bash中,(touch test)命令可以创建一个空白文件test。
- 原因:与错题2一样...
- 理解情况:
touch
用于创建文件,创建目录需使用mkdir
。 - 错题4:Linux Bash中,使用grep查找当前目录下 * .c中main函数在那个文件中的命令是( grep main *.c )
- 原因:觉得既然已经是当前目录了就没有加*.c
- 理解情况:*.c表示所有后缀为c的文件,当前目录下的文件后缀不可能全部为c。
- 错题5:Linux Bash中,使用wc统计hello.c和main.c共有几行代码的的命令是( wc -l hello.c main.c )
- 原因:考试时还没有做到,不懂_(:з」∠)_
- 理解情况:wc 命令用于统计并输出一个文件中行、单词和字节的数目,统计行数使用
wc -l
加文件名。 - 其他:还有一道题真的想不起来了,在考完试之后听有的同学说网上可以直接查出所有答案,他们很多人都是直接抄的,很生气,感觉这回考试的水分很大,但我能保证自己问心无愧,真正认真学过了。
其他(感悟、思考等,可选)
- 说实话本周刚开始做作业的时候还是有些惧怕的,感觉量很多,而且害怕自己很多不会,在做的过程中的确遇到了许多问题,有时甚至有些举步维艰,但是咬牙扛过去了确实还是很有成绩感的。敲代码真的是一件很有意思的事情,周围很多包括我在内的同学都像
中毒一样疯狂敲代码ಠᴗಠ总有一种5000行也也就一转眼能打完的感觉_(:з」∠)_
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 120/120 | 1/1 | 9/9 |
- 计划学习时间:15小时
- 实际学习时间:9小时
- 改进情况:由于某些原因未能达成计划时间...之后一定会加倍学回来的