//****************************************
创建时间:2014年9月24日星期三
创建作者:xxx
//****************************************
”简洁是智慧的灵魂”。----莎士比亚
1、KISS原则
程序设计中有一条所谓的KISS原则:Keep it simple , stupid
Kiss原则是unix操作系统的设计哲学。Unix不主张像瑞士军刀那样把各种功能集成一体,而是主张一个工具只做一件事情,这样才能把它做好。
比如这样一个程序,从键盘输入3个整数,要求程序输出其中最大的数
直接上一个最优秀的代码:
2、啰嗦重复
尤其在写判断语句时,很多语句可以省略,从而大大精简代码臃肿毛病
比如判断输入的字符C是否为字母字符
优秀的代码如下:
Int letter( char c )
{
Return ((c>=’a’&&c<=’z’) || (c>=’A’ && c<= ‘Z’));
}
在啰唆重复这里,还要说一种常见的质量不高的代码,也是我常常写的代码,
这是上什么代码呢?
为了记住这个啰唆重复的病句,我起了个名字叫做”二传手”,也叫做”脱裤子放屁”
就是在函数中,经常把通过形参传递过来的值在传给一个中间变量,本身这个变量没有太多的作用,经过传递,多了一个变量,这是不值得的
3、明白表达式的本质
我以前写的代码就是下面这个毛病
While((ch = getchar ) != EOF)
如果你仔细看我写过的acm程序就可以发现其中存在这样的病句很多,其实这都是质量不高的代码,对此我感到很抱歉。如果这是一个初出茅庐的本科生写出的,还可以原谅,但是对于一个研二的人来说,不应该,只能说C编程能力不高。
表达式本身就可以表达一个值
所以上面的代码可以如下写:
While( getchar() != EOF )
4、代码写的要“拽”(DRY)
DRY:don’t repeat yourself
这是写出优质代码的一个重要原则。其含义就是不要四处写同样的代码。这就是拽的意思。
比如这样一个程序,要求输入一个正整数,如果不是,则重新输入
相信很多人都不可能写出这样的代码:直接贴出漂亮的代码:
While(
Printf(“please input thevalue of n:”) , scanf(“%d”,&n), n<= 0
)
Printf(“error\n”);