13. 编写一函数age,利用递归方法求age(int n),
递归公式如下:
0 (n=0)
age(n)= 10 (n=1) age(n-1)+2 (n>1)
int age(int n)
{ if(n==0) return 0;
else if(n==1) return 10; else if(n>1) return age(n-1)+2; } 14. 利用递归方法求fun(n,x),递归公式如下: x?1 (n=0)
fun(n,x)= 2x (n=1)
3x2fun(n?1,x)2n?1 (n>1)
float fun(int n,int x)
{ if(n==0) return x+1; else if(n==1) return 2*x;
else if(n>1) return
3*x*x*fun(n-1,x)/(2*n+1); }
main()
{ int n,x;
float result;
scanf(\ result=fun(n,x);
printf(\ }
15. 编写函数int fun(int data[],int n),功能是:
返回数组data中前n个元素的最大值 int fun(int data[],int n)
{ int i,max=data[0];
for(i=1;i
16. 编写函数float fun(int arr[],int n),功能
是:返回数组arr中前n个元素的平均值 float fun(int arr[],int n)
{ int i;
float sum=0.0,aver;
for(i=0;i 是:将数组array中的前n个元素倒序存放 void fun(int array[],int n) { int i,j,temp; i=0,j=n-1; while(i { temp=array[i]; array[i]=array[j]; array[j]=temp; i++;j--; } } 18. 编写函数int fun(char s[]),功能是:返回 字符串s的长度 int fun(char s[]) { int len=0; while(s[len]!= '\\0') len++; return len; } main() { char s[80]; int strlen; printf(\ gets(s); strlen=fun(s); printf(\19. 编写函数void fun(char s[]),功能是:将字 符串s中的大写字母转换成小写字母 void fun(char s[]) { int i; for(i=0;s[i]!= '\\0';i++) if(s[i]>= 'A'&&s[i]<= 'Z') s[i]=s[i]+32; } main() { char s[80]; printf(\ gets(s); fun(s); printf(\20. 编写函数void fun(char s[]),功能是:将字 符串s中的小写字母转换成大写字母 void fun(char s[]) { int i; for(i=0;s[i]!= '\\0';i++) if(s[i]>= 'a'&&s[i]<= 'z') s[i]=s[i]-32; } main() { char s[80]; printf(\ gets(s); fun(s); printf(\21. 编写函数void fun(char s[]),功能是:将字 符串s中的小写字母转换成下一个字母,如果是z就转换a void fun(char s[]) { int i; for(i=0;s[i]!= '\\0';i++) if(s[i]>= 'a'&&s[i]<= 'y') s[i]++; else if(s[i]== 'z') s[i]= 'a'; } main() { char s[80]; printf(\ gets(s); fun(s); printf(\22. 编写函数void fun(char s[]),功能是:将字 符串s中的小写字母转换成上一个字母,如果是a就转换z void fun(char s[]) { int i; for(i=0;s[i]!= '\\0';i++) if(s[i]>= 'b'&&s[i]<= 'z') s[i]--; else if(s[i]== 'a') s[i]= 'z'; } main() { char s[80]; printf(\ gets(s); fun(s); printf(\23. 编写函数void fun(char s[]),功能是:将字 符串s中的字符倒序存放 void fun(char s[]) { int i,j; char temp; for(i=0,j=strlen(s)-1;i for(i=0;ps[i]!= '\\0';i++) if(ps[i]>= '0'&&ps[i]<= '9') cnt++; { temp=s[i]; s[i]=s[j]; s[j]=temp; } } main() { char s[80]; printf(\ gets(s); fun(s); printf(\} 24. 编写函数int fun(char *ps),功能是:统计 指针ps指向字符串中大写字母出现的次数,并作为函数值返回 int fun(char *ps) { int i,cnt=0; for(i=0;ps[i]!= '\\0';i++) if(ps[i]>= 'A'&&ps[i]<= 'Z') cnt++; return cnt; } main() { int n; char s[80]; printf(\input a string(s):\\n\ gets(s); n=fun(s); printf(\ 25. 编写函数int fun(char *ps),功能是:统计 指针ps指向字符串中数字字符出现的次数,并作为函数值返回 int fun(char *ps) return cnt; } main() { int n; char s[80]; printf(\input a string(s):\\n\ gets(s); n=fun(s); printf(\ 26. 编写函数int fun(char s[]),功能是:判断 字符串是s否为回文,是回文返回1,否则返回0 说明:回文即一个字符串的正序和逆序完全一致,例如: level int fun(char s[]) { int i,j,t=1; for(i=0,j=strlen(s)-1;i main() { char s[80]; printf(\ gets(s); if(fun(s)) printf(\ else printf(\ 27. 编写函数void fun(char *ps),功能是:将指 针ps所指字符串中的数字字符删除 void fun(char *ps) { int i,j=0; for(i=0;ps[i]!= '\\0';i++) if(!(ps[i]>='0'&&ps[i]<='9')) ps[j++]=ps[i]; ps[j]= '\\0'; } 28. 编写函数void fun(char *ps),功能是:将指 针ps所指字符串中下标为偶数的大写字母转换为小写字母 void fun(char *ps) { int i; for(i=0;i