编程计算1+ 1⼀2+ 1⼀3 +.......+ 1⼀n,用C语言

2024年12月05日 02:18
有5个网友回答
网友(1):

#include
int main()
{
int i,n;

float sum=0;

printf("请输入n:\n");


scanf("%d",&n);


for(i=1;i<=n;i++)
sum+=(float)1/i;


printf("前n项和为sum=%.4f\n",sum);
return 0;
}

K&R C

起初,C语言没有官方标准。1978年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。布莱恩·柯林汉(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本书,名叫《The C Programming Language》。这本书被 C语言开发者们称为K&R,很多年来被当作 C语言的非正式的标准说明。人们称这个版本的 C语言为K&R C。

K&R C主要介绍了以下特色:

结构体(struct)类型

长整数(long int)类型

无符号整数(unsigned int)类型

把运算符=+和=-改为+=和-=。因为=+和=-会使得编译器不知道使用者要处理i = -10还是i =- 10,使得处理上产生混淆。

即使在后来ANSI C标准被提出的许多年后,K&R C仍然是许多编译器的最 准要求,许多老旧的编译器仍然运行K&R C的标准。

网友(2):

main () {
    double s = 0;
    int n;
    printf ("n=");
    scanf ("%d", &n);
    for (int i = 0; i <= n; i++) {
        s += 1 / (double)i;    /*如果不转换类型,1/i结果恒为0*/
    }
    printf ("S=%g\n", s);    /*用%g输出,不会输出小数点后无意义的0*/
    getch ();    /*暂停屏幕*/
}

网友(3):

如果追求效率,或是公司面试时遇到此题,直接

return (n+1)*n/2;
有公式解的问题不需要用循环。

如果只是练习编程,前面两人已经给出了方法。

网友(4):

#include
int main (){
int sum=0;
int n=100;
for(int i =1;i<=n;i++){
sum+=i;
}
printf("sum is:%d",sum);

return 0;

}

网友(5):

int sum=0;
int n=100;
for(int i =1;i<=n;i++){
sum+=i;
}
system.out.println(sum);