继续C语言

这个学期坚持得最久的是学习C语言了,几乎每天都花时间看《The C Programming Language》的第二版,目前刚进入第八章,也就是最后一章。第八章讲了UNIX的系统调用和一些库函数的实现。

可是我用的Linux毕竟不是UNIX,所以不能一模一样地照写下去。果然在第八章的第一个例子就遇到了问题,例子讲的是系统调用read和write函数。按照书上写的,需要“syscalls.h”的头文件,但是没有,幸好有一个类似的叫“syscall.h”,里面果然有read和write函数的声明。接下来又遇到另一个问题,就是书上说那个头文件里有一个常数叫BUFSIZ,但是我也找不到,后来偶然在“stdio.h”里找到了。后来在Google上搜,发现有一个博客的作者和我的经历差不多,真是巧。

最近,google.cn连续五天发布了节日涂鸦,真是难得,而且刚好每天我都保存下来了,跟大家分享,前面的文章已经贴出第一张了,这是第二张。

Advertisements

专利之家

专利之家是一个介绍新产品和有趣的玩意的网站,是基于Wordpress的展示网站。我自从一个月前听说这个网站,就每天都留意,而且还订阅了。它每天介绍5到8件产品,简直让人目不暇接。在学习和工作中每天能看到这么多创意非凡的产品,是一件很惬意的事。

专利之家介绍的产品有时候还能给我们带来很多优秀的设计灵感,有些是关于动手方面的,有些是思维方面,对我的编程也有一定影响。而且它的简介版面让人看了很舒服,我觉得这是一个设计得不错的blog平台的展示网站,重点介绍一下,网址是http://www.patent-cn.com/。今天是圣诞节喔,祝大家圣诞快乐,^_^

冬至快乐

最近每样东西都有点进展了。下学期思科网院招生的宣传终于有人提出来了,另外CiscoTeam的新成员培训计划也酝酿得差不多了。另外,在毕业论文上,因为和泽瑶合作,所以效率也自觉性也开始出来了。还有就是C语言编程的那本书终于看到第七章了,是这个学期坚持得最久的事,快到头了,坚持一下。

今天是冬至了,高中三班的同学又一次聚在一起打边炉,很爽,冬至快乐!

Linux输入输出流

Linux的shell和UNIX一样,对输入输出流有三个基本的功能。第一个是小于号<,表示输入重定向,用文件的内容作为输入流,如“prog >./a.txt”,就会把a.txt的内容作为prog程序的输入。第二个功能是是管道|,管道的功能是把前面文件的输出作为后面文件的输入,一般的用法如“prog1 | prog2”。第三个功能是大于号>,表示输出重定向,会把程序的标准输出重定向到文件中。

这三者结合,就能够产生无穷多种效果了,很方便。比如我们要在a.txt文件里找有str那几行,可以用这条命令“cat <./a.txt | grep str >./b.txt”,把结果保存在b.txt再慢慢看。有了输入重定向,程序可以不用专门给文件名预留一个参数的位置了,很像中大的Sicily的设计和其它高校的ACM系统。有了重定向输出,我们可以很容易做到日志的功能,就算程序原本没这个功能。这三样工具,是命令行界面的一个极强和效率极高的工具,怪不得Linux早期的高手一直不肯离开命令行界面。

Google Calendar

Google Calendar和Gmail一样是很多人,尤其是商务人士用得最多的Google产品之一。最近发现,原来Calendar有一个简单的页面可以结合FIreFox侧栏使用,真是很好玩,而且很方便。

首先把这一页面加入FireFox的书签,地址在这里,然后设置该书签在侧栏运行。这样子当选这个书签时,这个简洁的Google Calendar就会在侧栏显示,而不会在主窗口显示,大小刚刚好,估计这个页面就是为FireFox的侧栏设计的。不过其实我目前用Google Calendar还不多,可能还没工作的原因吧。我暂时最喜欢它的短信提醒功能。

博客可读性

差不多近一个星期没有更新博客了,因为这个星期基本都在忙CIscoTeam招新的事情。这次介绍一个博客可读性测试的网页,其实想写这个很久,一直耽搁了。

测试方法很简单,只要在输入框中输入博客的地址,很快就会得到测试的结果。它把等级分成幼儿园、小学、中学、大学等等。我这个博客的测试结果是Genius,那是不是意味着我的博客是天书呢,汗。测试页面的地址是http://www.criticsrant.com/bb/reading_level.aspx

初等几何

前几天看到了Solidot上介绍说,有一条自称是世界上最难的初等几何题目。根据上面说,只用初等几何解题就意味着只能用一些简单的定理,包括三角形内角和,对顶角和错位角等角度的关系,还有就是如证明全等三角形和相似三角形的一些定理,比如SAS(边角边),ASA,AAS。

原题的地址在这里。看到熟悉的东西,忍不住试做了一下,确实也蛮有技巧,为了对得起以前学过的东西,决定把这题完整地解一遍。

已知:∠CAE是10度,∠BAE是70度,∠ABD是60度,∠CBD是20度,∠C是20度

求∠DAE的大小

解:过E作EF平行于AB交AC于F,令∠BFG等于∠BFD交BC于G,连结DG

∵三角形AEF和三角形BEF全等(易得)

∴∠EBF等于10度

∴BF是∠DBE的角平分线

∵∠BFD=∠BFE,∠FBD=∠FBE

∴三角形BDF和三角形BGF全等(ASA)

∴FD和FG长度相同

∵∠DFG为60度(易得)

∴三角形DFG是等边三角形

∴DF和DG相等

∵∠EFG=∠EGF=40度

∴EF=EG

∴三角形EFD和三角形EGD全等

∴∠FED=∠GED

∴x=20度

证毕