刚开始学C 问下:

来源:百度知道 编辑:UC知道 时间:2024/05/15 14:34:04
数学里的连加 1/k (k从1到10) 求和用C怎么编写?

float sum=0;
int k;
for(k=1;k<11;k++)
{
sum=sum+1.0/(float)k;
}

可以写成一个函数,参数就是你需要的K
float sum(k,&a)
{
while(k>=1)
{
a=a+1/k;
k--;
}
return;
}
a的前面加&表示传引用,因为a是形式参数,当a处代入实参时,假如不加&,就不能改变实参的值.
a处就是你想把结果放入的变量.
比如你想把结果放在b中,就可以这样使用:
float b=0;
sum(k,b);

标准99C级数算法代码.

#include<stdio.h>
/***************************************/
int main()
{
int i,k=1;
double t=1.0,sum=0;
for(i=1;i<=10;i++)
{
sum=sum+t;
k++;
t=1.0/k;
}
printf("sum is:%f\n",sum);
return 0;
}
/***************************************/

简化后的高效率:
#include<stdio.h>
/***************************************/
int main()
{
int k;
double sum=0;
for(k=1;k<=10;k++)
{
sum+=1.0/k;
}
printf("