else c= ① ; return(c); } main() { int n=5;
printf(\② ); }
【3.26】下面的函数sum(int n)完成计算1~n的累加和。 sum(int n) { if(n<=0)
printf(\; if(n==1) ① ; else ② ; }
【3.27】下面的函数是一个求阶乘的递归调用函数。 facto(int n) { if( n == 1 ) ① ; else return( ② ); }
【3.28】组合问题,由组合的基本性质可知: (1) C(m,n)=C(n-m,n)
(2) C(m,n+1)=C(m,n)+C(m-1,n)
公式(2)是一个递归公式,一直到满足C(1,n)=n为止。当n<2*m时,可先用公式(1) 进行简化,填写程序中的空白,使程序可以正确运行。 #include\main() { int m,n;
printf(\; scanf(\;
printf(\; }
combin( int m, int n) { int com;
if( n<2*m ) m=n-m; if( m==0 ) com=1; else if(m==1) ① ; else ② ; return(com); }
【3.29】下列函数是求一个字符串str的长度。 ?????? int strlen( char *str )
??????{ if( ① ) return (0); ?? ???? else return ( ② ); }
【3.30】用递归实现将输入小于32768的整数按逆序输出。如输入12345,则输出54321。 #include\main() { int n;
printf(\; scanf(\① ); r(n); printf(\; } r( int m )
{ printf(\② );
m = ③ ; if( ④ ) ⑤ ; }
【3.31】输入n值,输出高度为n的等边三角形。例如当n=4时的图形如下: * *** ***** *******
#include
{ printf( \; ① ; }