2、i=j;j=t;}returni;}intmin(intp,intq){returnp/q;}2.输入4个整数,找出其中最大的数。用函数的嵌套调用来处理。#includeintmain(){intmax4(int,int,int,int);//对max4的函数声明inta,b,c,d;scanf("%d%d%d%d",&a,&b,&c,&d);//输入4个数printf("max=%d",max4(a,b,c,d));//调用4个数中的最大者return0;}intmax4(
3、inta,intb,intc,intd)//定义max4函数{intmax2(int,int);//对max2的函数声明returnmax2(max2(max2(a,b),c),d);//调用max2把作为函数值带回main函数}intmax2(inta,intb){return(a>b?a:b);//返回条件表达式的值,即a和b中的大者}3.用递归调用的方法求5!。#includeintmain(){intfac(int);intn;scanf("%d",&n);第20页共2页
4、printf("%d!=%d",n,fac(n));return0;}intfac(intn){if(n==0
5、
6、n==1)return1;elsereturnfac(n-1)*n;}4.按以下递归公式求函数的值。例如,当给n输入5时,函数值为18,(要求用递归实现)。#includeintmain(){intfun(int);intn;scanf("%d",&n);printf("%d",fun(n));return0;}intfun(intn){if(n==1)ret
7、urn10;elsereturnfun(n-1)+2;}5.用递归法将一个整数n转换成字符串。例如,输入483,应输出字符串“483”,n的位数不确定,可以是任意位数的整数。#includevoidmain(){voidfun(int);intn;scanf("%d",&n);if(n<0){n=-n;putchar('-');}fun(n);puts("");}voidfun(intm){if(m/10)fun(m/10);putchar(m%10+48);}6.写一个函数,完
8、成将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1改后成为1,4,5,6,8。#include#defineN5intmain(){第20页共2页voidfun(inta[]);inta[N],i;for(i=0;i9、i#defineN5#defineM10intmain(){intscore_1[N],score_2[M];inti,fun(inta[],int);for(i=0;i<5;i++)scanf("%d",&score_1[i]);for(i=0;i<10;i++)scanf("%d"
10、,&score_2[i]);printf("averageofscore_1:%d",fun(score_1,N));printf("averageofscore_2:%d",fun(score_2,M));return0;}intfun(intc[],intl){intaver=0;for(inti=0;i