недействительным рекурсии () { заявления; ... ... ... рекурсии (); / * функция называет себя * / ... ... ... } INT основной () { рекурсии (); }
#include <stdio.h> двойной факториал (без знака INT я) { если (я <= 1 ) { возвращает 1 ; } Вернуться я * факториала (я - 1 ); } INT основных () { Int I = 15 ; Е ( " % d的阶乘为% F \ п " , я, факториала (я)); вернуться 0 ; }
# включить <stdio.h> INT fibonaci ( INT I) { если (я == 0 ) { вернуться 0 ; } Если (я == 1 ) { возвращают 1 ; } Вернуть fibonaci (i - 1 ) + fibonaci (i - 2 ); } Int основных () { Int I; для (я = 0 ; г < 10 ; я ++ ) { Е ( " % d \ т \ п " , Fibonaci (я)); } Возврат 0 ; }
#include <stdio.h> #include <stdarg.h> Двойной Среднее ( INT Num, ...) { va_list valist; Двойной СУММА = 0,0 ; INT I; / * для Num инициализации параметров valist * / va_start (valist, NUM); / * доступ параметров все назначенное valist из * / для (I = 0 ; I <NUM, I ++ ) { SUM + = va_arg (valist, INT ); } / * очистить память valist зарезервированного * / к va_end ( valist); возвращение СУММА / NUM; } INT основных () { Е ( " Среднее число 2, 3, 4, 5 =% F \ п " , средняя ( 4 , 2 , 3 , 4 , 5 )); Е ( " Среднее 5, 10, 15 =% F \ п " , средняя ( 3 , 5 , 10 , 15 )); }