摘要: 《C解毒》样张 阅读全文
posted @ 2011-07-31 16:07 garbageMan 阅读(895) 评论(7) 推荐(3) 编辑
摘要: DRY:Don’t repeat yourself,是编写出优质代码的一个重要原则。其含义就是不要四处写同样的代码。简言之,干净利落,是为“拽”(DRY)。 有些初学者喜欢把相同或类似功能的代码四处粘贴,就属于典型的self-repeat行为。这样编写代码的一个显著危害就是一旦你需要修改相应的代码,你就得疲于奔命四处奔波地去修改每一处代码。 即便如此,你心里恐怕还难免惴惴不安,因为你很可能挂万漏一。即使你确信已经全面没有遗漏地进行了修改,你更没底的事情是每处都进行了正确的修改。因为按照概率分析,如果你有99%把握做一次正确修改,那么做十次正确修改不出错的可能性就会下降到90%。 退一步说,你. 阅读全文
posted @ 2011-07-16 22:12 garbageMan 阅读(3180) 评论(39) 推荐(3) 编辑
摘要: 你也许并不知道,C语言的类型转换运算符和sizeof、(一元)&运算符的优先级并不相同 阅读全文
posted @ 2011-07-13 18:40 garbageMan 阅读(4897) 评论(194) 推荐(7) 编辑
摘要: 令人长见识的代码 阅读全文
posted @ 2011-06-20 20:39 garbageMan 阅读(3228) 评论(54) 推荐(3) 编辑
摘要: 如果是scanf("a=%f,b=%f,c=%f",&a,&b,&c);输入应采用如下形式a=12,b=24,c=36采用这种形式是为了使用户输入数据时添加必要的信息,使含义清楚,不易发生输入数据的错误。——谭浩强,《C语言程序设计》(第2版),清华大学出版社,2008年11月,p71~72这段文字很唬人,貌似讲的头头是道,其实愚蠢透顶。程序是用来为用户解决问题的,而不是用来给用户添麻烦的。任何一个合格的程序员都不会写出scanf("a=%f,b=%f,c=%f",&a,&b,&c); 这样的代码。理由是, 阅读全文
posted @ 2011-03-27 23:18 garbageMan 阅读(3214) 评论(34) 推荐(4) 编辑
摘要: 谭浩强《C程序设计》(第四版)优先级和结合性部分的评述。 阅读全文
posted @ 2011-02-16 09:14 garbageMan 阅读(5768) 评论(54) 推荐(2) 编辑
摘要: 1.假如我国国民生产总值的年增长率为10%,计算10年后我国国民经济生产总值与现在相比增长多少百分比。计算公式为: p=(1+r)^nr为年增长率,n为年数,p为与现在相比的倍数。 解:从附录D(库函数)可以查到: 可以用pow函数求x^y的值,调用pow函数的具体形式是pow(x,y)。在使用pow函数时需要在程序的开头用#include指令将 头文件包含到本程序模块中。可以用下面的程序求出10年后国民生产总值是现在的多少倍。 #include #include int main() {float p,r,n; r=0.1; n=10; p=pow(1+r,n); printf(" 阅读全文
posted @ 2011-01-20 22:54 garbageMan 阅读(3236) 评论(64) 推荐(2) 编辑
摘要: C程序的执行是从main函数开始的,如果在main函数中调用其他函数,在调用后流程返回到main函数,在main函数中结束整个程序的运行。 这段有些莫名其妙的文字即使从汉语语法的角度来说也成问题。成问题的地方在于“在调用后流程返回到main函数”不清楚是前面“如果”的一个结果还是对前面“如果”的一个补充。 抛开这种语文方面的缺点不谈,这段文字给人的印象就是“C程序从main函数开始执行,在main函数结束”。然而事实真的如此吗? C程序的运行离不开一定的环境(Environment),这种环境叫做执行环境(Execution environment)。这种环境有两种:独立环境(Fre... 阅读全文
posted @ 2011-01-16 14:26 garbageMan 阅读(21713) 评论(15) 推荐(0) 编辑
摘要: Byte是8位吗?——C语境中的Byte及C语言的char类型两类字符 在C语言中,字符(character)这个术语具有两个层次上的含义:书写源程序的字符和程序处理的字符。 例如,在下面的源程序中“""”之内的“你”、“好”、“,”、“C”、“!”、“\n”就属于程序要处理的字符。#include int main(void){ printf("你好,C!\n"); return 0;} 该源程序中的其他字符则属于书写源程序的字符,这其中也可能包含并没有明显显示出来的字符,例如空格字符(space character)、水平制表符(horizontal 阅读全文
posted @ 2010-11-06 19:46 garbageMan 阅读(4501) 评论(28) 推荐(1) 编辑
摘要: 【 c格式符用来输入单个字符(scanf()函数)。 char ch; scanf("%3c",&ch); 如果从键盘连续输入3个字符“abc”,由于ch只能容纳一个字符,系统就把第一个字符'a'赋给字符变量ch。】果真如此么?考察一下下面的代码#include #include int main( void ){ char __ch = 'E', _ch = 'R' , ch = 'R' ; printf("最初__ch,_ch,ch为%c%c%c\n", __ch , _ch , 阅读全文
posted @ 2010-11-01 14:52 garbageMan 阅读(2292) 评论(13) 推荐(1) 编辑