自学C语言,自主研发软件,“第一代”程序员!

259 篇文章 60 订阅

你好哇,李银河。

一想到你,我这张丑脸上就泛起微笑。”

喜欢读书的人,对王小波都不陌生。但很少有人知道王小波是中国早期可以说是“第一代”的程序员。

王小波在自己的杂文集《沉默的大多数》中<科学的美好>写到:

“我现在既不是化学家,也不是数学家,更不是物理学家。我靠写文章为生,与科技绝缘——只是有时弄弄计算机。这个行当我会得不少,从最低等的汇编语言到最新潮的 C++全会写,硬件知识也有一些。”

在这里插入图片描述

大学的王小波虽然主修的是经济,但正如他读书繁杂,他对于知识汲取也十分“贪心”。他后来又学了化学,再后来又转到了数学系。

而同期,他还利用闲暇时间自学了计算机技术。得益于去匹兹堡留学接触到了国外先进的计算机知识,他先后学了 Fortran、汇编语言和 C 语言。

还为北京煤气工程公司开发管理软件,该项目获得了当时的北京市科技进步三等奖。

1991年,这时候的中国还没接入互联网。

马云正在在辗转经手小商品交易,艰苦养活刚创办的小翻译社;马化腾正在大学里修读计算机,还没有涉足象牙塔外的水深火热;雷军倒是已经开始在计算机市场闯荡,在著名的金山软件实习……

而此时的王小波,已经独立开发出了一款类似于 Word 的软件。

因为王小波的IBM PC/XT内存很小,李银河又不准他花钱买新的,所以他费了很大精力把软件的大小控制在55K以内,这让他很得意。

在这里插入图片描述

独立研发文字软件

为了做出软件需要的中文窗口和在电脑上输入自己的小说,他用C++语言写出了中文输入法、编辑器以及多媒体系统。一种类似Word的软件被他开发出来,用来辅助日常的写作。

突出的编程能力

在他学习编程期间,也没有落下写作。虽然那个时候没有得奖,极客生活并不孤单,他常与友人交流编程心得,还会分享博客。

在博客里,他除了写一些自己学习编程的故事和疑惑,分享一些如何购买计算机的经验外,也会抱怨当时国内的IT行业的发展情况。

以下是他在博客里记录自己使用计算机软硬件的想法,还有自己的一些软件改进:

“闲着没事搞了个发明。原有中文软件是用线扫描方式出汉字。我做了一个用调整字模发生器方法出汉字的系统。用此法可以很容易地在西文软件上出中文窗口,还在 SPSS 上加了几句骂娘的话。”

——1991 年 5 月

“去年托人带来的中文软件(严氏 By×),我用着尚好,而且又用 C 语言仿编了一个,程序是我的,拼音字典是人家的,执此招摇撞骗,骗了一些钱。”

——1991 年 9 月

业内曾经有一种说法:王小波的编程能力绝对不逊色于同一时期的雷军和马化腾。

王小波编软件的 1991 年,这时候中国还没接入互联网,一直到 3 年后,马云这些中国第一代互联网巨头才开始进入这行。也就是说,王小波比马云他们整整早了 3 年。

计算机大趋势预测

他认为,IBM-PC的兼容机队伍庞大,更新速度快,是苹果远无法望其项背的。于是他转而买下了当时的微软顶配机——286 PC机。”

以下是他的一段话:

“到底也加入了IBM的行列。照我看,苹果机还是买不得。因为IBM-PC的兼容机队伍庞大。INTEL又总能推出新一代CPU,将来还有大发展。买微机钱的投资是大事,时间、精力投资更为巨大,买386兼容机是明智之举。

我最近可能调入人大,投奔班长。最近胡思乱想想出了个理论来,还没认真推导,大抵是设立多个Dummy(两分变量)构成的联合分布,其合计样本点构成一球面,点到点的距离以总误差计算。所以一样本点的对点就是它的否,误差最大。其余的正在想。”

在这里插入图片描述

他可能是中国第一代的“苹果黑”,以及最早的“IBM粉”了吧。

不过,他对当时计算机大趋势的看法,还是蛮准确的。

编程和写作的抉择

后来,王小波发现,自己开发软件能赚钱,写作也能赚钱,但王小波只想专注于一件事。这可怎么选择?

也许是对于编程的喜好没有写作来得浓烈。王小波最终选择了做一名自由撰稿人。在《工作与人生》一文中,王小波写道:“我对权力没有兴趣,对钱有一些兴趣,但也不愿为它去受罪——做我想做的事(这件事对我来说,就是写小说),并且把它做好,这就是我的目标。”

至此,留在人们心中中,便是那位小说家王小波。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
设计一个商品销售管理程序。该程序应该具有以下功能: (1)录入、修改、删除某商品信息; (2)显示所有商品信息; (3)按商品编号由小到大的顺序显示商品信息; (4)按商品销售数量从大到小的顺序显示商品信息; (5)按商品名称、商品编号、供货商等信息进行查询,若查询信息不存在,输出没找到的信息; (6)商品的销售; (7)统计缺货商品(可设定一个边界范围,如数量小于5,以便及时订货),并产生订货信息; (8)商品销售统计。 题目要求: (1)按照分析、设计、编码、调试和测试的软件开发过程完成这个应用程序,即在程序中加入异常处理,检查用户输入数据的有效性,以保证程序的健壮性; (2)商品信息应该包括商品编号、名称、规格、进货数量、销售数量、价格、供货商名称等; (3)为各项操作功能设计一个菜单,应用程序运行后,先显示这个菜单,然后用户通过菜单选项选则所需进行的操作项目,菜单要界面友好、清晰; (4)将所有商品信息存储在一个文件中,并实现文件的读写操作,即将输入的数据以文件的形式存盘,将原来已经存盘的文件读入内存,进行管理; (5)应保证测试用例测试程序的各种边缘情况。 输入要求: 应用程序运行后,在屏幕上显示一个菜单。用户可以根据需要,选定相应的操作项目。进入每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。 输出要求: (1)应用程序运行后,在屏幕上显示一个菜单。 (2)要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值