分类：电脑/网络-程序设计-C/C++
问题：C语言两道题目，怎么解？谢谢大家帮忙啊～1.用下面的公式计算e的 
1. 用下面的公式计算e的x次方。在中要求用函数f1计算每项分子的值，用函数f2计算每项分母的值（用递归函数来实现）。通过主函数调用f1和f2完成计算。  =1+ x +  +   + …（前10项的和）2. 编写函数fun(char s[ ], int num[ ])，其功能是统计字符串 s 中数字字符、大写字母、小写字母和空格字符的出现次数，统计结果存于num数组中。再设计main函数，调用fun函数，实现预期功能。希望能告诉我要怎么编，学得没多久，问题蛮多得，希望把每步得思路也都写一下，谢谢大家了，帮忙一下，万分感谢！
回答：1、程序如下:#include <stdio.h>double f1(double x,int n){  //每一项的分子  double r = 1;  for(int i=0;i<n;++i)    r = x*r;  return r;}int f2(int n){  //每一项的分母  //即计算 n 的阶乘  int f;  if(0==n)    f = 1;  else    f = f2(n-1)*n;  return f;}int main(void){  double result = 0;  double x;  int n;  printf("请输入e的指数：");  scanf("%lf",&x);  printf("请指定Taylor公式的项数：");  scanf("%d",&n);  if(f2(n)>100000)     printf("精度只能到小数点后六位！\n");  for(int i=0;i<=n;++i)    result = result+f1(x,i)/f2(i);  printf("结果为:%f\n",result);  return 0;}2、程序如下：#include <stdio.h> void fun(char s[],int num[]){ for(int i=0;s[i];++i) { if(s[i]>='0'&&s[i]<='9') num[0]++; if(s[i]>='A'&&s[i]<='Z') num[1]++; if(s[i]>='a'&&s[i]<='z') num[2]++; if(s[i]==' ') num[3]++; } } void main(void){ char s[80]; int num[4]={0,0,0,0}; printf("请输入字符串：\n"); gets(s); fun(s,num); printf("字符串中共有数字 %d 个\n",num[0]); printf("字符串中共有大写字母 %d 个\n",num[1]); printf("字符串中共有小写字母 %d 个\n",num[2]); printf("字符串中共有空格 %d个\n",num[3]); } 以上二个程序均在++6.0通过编译