摘自: Fifteen Exercises for Learning a new Programming Language

1、无穷循环显示数字数列(1、2、3、4、5、6、……、等等),按指定键退出程序(比如 Esc 键)
2、斐波纳契数列,交换两个变量,在一个数字列表中查找最大/最小的数字
3、键盘输入一些数字,然后递增/递减排序输出
4、用公式 (D*V*rho)/mu 来计算雷诺数,其中 D=直径、V=加速度、rho=密度、mu=粘稠度。输入给程序一些数据(先不要管单位转换)
如果结果小于2100,就显示 Laminar flow
如果结果介于 2100 和 4000 之间,就显示 Transient flow
如果大于4000就显示 Turbulent Flow
(if..else..then 条件判断)
5、修改前面的程序,最后增加一个提示“是不是再来一次?(y/n)”,如果回答 y,程序就重新要求输入这些参数。如果是“n”就退出程序
(do while 循环)
在程序运行时,给 mu 变量赋值为 0,看看会发生什么,是不是出现了“DIVID BY ZERO”错误?或者是不是出现了”Segmentation fault..coredump”?怎样处理这种情形?程序有没有内建了什么处理机制么?(异常处理)
6、科学计算,要求支持加、减、乘、除、开方、平方、立方、sin、cos、tan、阶乘、取反、取模
7、用不同的格式打印输出,四舍五入保留4位小数,左右补0对齐(输入/输出操作)
8、打开一个文本文件,转换成 HTML 文件(文件操作/字符串处理)
9、时间和日期:获取操作系统时间,再转换成不同的格式输出,比如: ‘DD-MON-YYYY’, ‘mm-dd-yyyy’, ‘dd/mm/yy’ 等等
10、建立一个文件,把文件的创建日期和时间戳附在文件名后面
11、输入一个 HTML 表格,删除所有的标签,把数据用逗号/制表符分割保存到文件中
12、找出文件中的所有大写单词,去除重复的
13、实现自动换行功能(注意观察在 Windows 的记事本中的自动换行是怎样工作的)
14、在数组的开头、中间和结尾添加/删除数据
15、正在学习的这个程序设计语言是不是还有一些其他特性:操作符重载,虚函数、引用、指针等等。这个语言是不是还支持一些叫做“namespace/package/module”的东西?多看看

2 Comments

  1. yaner says:

    偶要转一下这个文章,谢谢~

  2. yaner says:

    thanks

Leave a Reply

Your email address will not be published.

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax

This site uses Akismet to reduce spam. Learn how your comment data is processed.