请教几个简单的C语言问题。急许在2天内得到答案!

来源:百度知道 编辑:UC知道 时间:2024/05/12 03:32:52
程序设计
1.利用下面的公式求s的值(求前10项之和)
s=1/3-(1/3)*(2/5)+(1/3)*(2/5)*(3/71)-(1/3)*(2/5)*(3/7)*(4/9)+...
输出格式
s=0.235167
#include <stdio.h>
PRINT(float f)
{
FILE *out;
if((out=fopen("K:\\24000103\\RESULT.TXT","w+"))!=NULL)
fprintf(out,"s=%f",f);
fclose(out);
}
main()
{

PRINT(s);
}

2
编写程序,计算s=1+1/(1*2)+1/(1*2*3)+1/(1*2*3*4)+...+1/(1*2*3*...*n)的值。
说明:本题以n=10为例。
输出格式:s=1.123456
#include <stdio.h>
PRINT(float s)
{
FILE *out;
if((out=fopen("K:\\24000103\\RESULT.TXT","w+"))!=NULL)
fprintf(out,"s=%f",s);
fclose(out);
}
main()
{
float s;

PRINT(s);
}

3.题目:求所有的“水仙花数”之和。所谓的“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如153是1个“水仙花数”,因为:153=1*1*1+5*5*5+3*3*3
输出格式:
23456
#include <stdio.h>
PRINT(in

程序设计
1.利用下面的公式求s的值(求前10项之和)
s=1/3-(1/3)*(2/5)+(1/3)*(2/5)*(3/71)-(1/3)*(2/5)*(3/7)*(4/9)+...
main()
{
int a,b,i,j;
float sum1[10],sum=0; /*sum1[]用于储存10次的结果,以方便加减*/
for(i=0;i<10;i++) /*计算10个式子*/
{a=1;b=3;sum[i]=1; /*循环开始分子分母初始化,数组初始化*/
for(j=0;j<=i;j++)/*计算每个式子里的乘积,1次1个,2次2个。。。*/
{sum[i]=a/b*sum[i];
a+=1;
b+=2;}
for(i=0;i<10;i++) /*把10个式子相加*/
{
if((i+2)%2==0) j=1;else j=-1; /*取符号,第1个是+,第2个是-。。。*/
sum=sum+(j*sum1[i]);
}
printf("sum=%.6f.\n",sum);
}

2
编写程序,计算s=1+1/(1*2)+1/(1*2*3)+1/(1*2*3*4)+...+1/(1*2*3*...*n)的值。
说明:本题以n=10为例。
输出格式:s=1.123456
main()
{
float tg(int h); /*声明函数,作用:求1/n!的值*/
int i,j;
float a,sum;
for(i=1;i<=10;i++)
{
a=tg(i); /*调用函数*/
sum=sum+a; /*把返回的值相加*/
}
printf("sum=%.6f.\n",sum);
}
float tg(int h)/*函数定义*/
{
float ji