C语言的短路用法

淘宝的一道面试题:

 

写一个函数: int print_num(int k){};     要求函数功能为打印k的降序,直到0结束,即如果k=5,即打印: 5  4  3  2  1  0    
要求: 不能用 if ,  if else,  switch,  ?:  ,  while,  for ,  do while,  goto 语句 ,三目运算语句。

 

论坛大牛的神解法(短路法)

int print_num( int k ) 
{ 
       printf("%d",k); 
       k&&print_num(k-1); 
       return k; 
}
posted @ 2012-07-27 14:51  _Rachel  阅读(289)  评论(0)    收藏  举报