本文将会采用多种方法计算1+2+3+4+····加到100的和,通过点点滴滴为大家展示出计算机的魅力,算法的魅力。同时大家对程序进行微小的改动之后就可以实现计算1加到任何一个你想要的数,希望你读完本文后能有所收获。
使用C语言计算1+2+3+...+100
- 一、使用循环语句
- 1、使用for循环语句
- 2、使用while循环语句
- 3、使用do...while循环语句
- 二、使用等差数列
- 三、使用递归
一、使用循环语句
1、使用for循环语句
for循环中i=1部分会被直接执行,然后执行{}中的部分;当第一次执行完{}中的部分后会判断i<=100部分,如果判断结果为真则执行i++后继续执行{}中的部分,如果为假则会结束运行。更多关于for循环的内容可以去看一下我写的另外一篇文章C语言for循环语句的使用
#include <stdio.h>
int main()
{
int i,sum;
sum=0;
for(i=1;i<=100;i++)
{
sum+=i;
}
printf("%d",sum);
return 0;
}
【运行结果】
2、使用while循环语句
while语句,先判断后执行,而do…while先执行后判断。更多关于while循环的内容可以去看一下我写的另外一篇文章do…while循环和whil循环
#include<stdio.h>
int main()
{
int i=0,sum=0;
while(i<=100)
{
sum+=i;
i++;
}
printf("%d",sum);
return 0;
}
【运行结果】
3、使用do…while循环语句
#include<stdio.h>
int main()
{
int i=0,sum=0;
do
{
sum+=i;
i++;
}while(i<=100);
printf("%d",sum);
return 0;
}
【运行结果】
二、使用等差数列
第二种方法比第一种代码更少,同时也不会循环,消耗的计算机资源也更少,这就是算法的魅力之处。
#include <stdio.h>
int main()
{
int sum;
sum=(100+1)*50;
printf("%d",sum);
return 0;
}
【运行结果】
三、使用递归
无论是在C语言还是在别的语言递归都非常非常的重要。因此掌握递归在实际问题中的应用方法尤为重要。
#include <stdio.h>
int func(int a)
{
int b;
if(a>0)
{
b=a+func(a-1);
}
return (b);
}
int main()
{
int a=100,b;
b=func(a);
printf("1+2+3+...+100的值是%d",b);
}
【运行结果】
本人承诺以上文章为本人编写,绝非复制粘贴。写在这里一是为了防止以后自己将知识点遗忘,二是为了和大家分享我自己对这个知识点的理解和认识。如果我的文章中有错误希望看到后可以指正,感激不尽!