本程序要求实现功能:累加1到101
#include "stdio.h"
void main()
{
int i,sim = 0;
for( i = 1;i <= 101 ; i++ )
{
sum = sum + i;
}
printf("sum = %d \n",sum);
}
本程序要求实现:1*2*3+3*4*5+...99*100*101
#include "stdio.h"
void main()
{
long i;
long term,sum = 0;
for ( i = 1 ; i <= 99 ;i = i + 2)
{
term = (sum+i) * (sum+i+1) * (sum+i+2);
sum = sum +term;
}
printf("sum = %ld\n",sum);
}
i = i + 2 每隔两个数字一跳
term = (sum+i) * (sum+i+1) * (sum+i+2); 从1开始每三个数字相乘一组
sum = sum +term; 累加每组
本程序要求实现:a + aa + aaa + aaaa + ...+aaa(n个a)的值,n 和 a 值由键盘输入
#include "stdio.h"
#include "math.h"
void main()
{
long term=0,sum = 0;
int a,i,n;
printf("请输入a,n:");
scanf("%d,%d",&a,&n);
for ( i = 1 ; i <= n ; i++)
{
term = pow (a,i);
sum = sum + term;
}
printf("sum = %ld\n",sum);
}
总结:
用到pow( x , y ) 函数,以及头文件#include < stdio.h >
pow 的用法 例如:3的四次方 等于 pow (3 ,4)
次程序要求实现的核心,n个a,累加 n次,每次累乘一个a,直道乘到n个a。
第一次:a
第二次:aa
第三次:aaa
所以我们可以用 pow(a,i) i 每次都自增1.
用 sum = sum + term 存放每次累加的 项
本程序要求实现:计算 1 -1/2 + 1/ 3 - 1/4 +...+1/99 -1/100+...,直到最后一项的绝对值小于10^-4为止。
#include "stdio.h"
#include "math.h"
void main()
{
int n = 1;
float term = 1.0, sign = 1 ,sum = 0;
while ( fabs(term) >= 1e-4 )
{
term = sign / n ;
sum = sum + term;
sign = - sign ;
n++ ;
}
printf("sum = %f \n",sum);
}
while(n)满足条件 n 则一直循环。不满足n跳出该循环。
fabs( term ) >= 1e-4 ; 计算 term 的绝对值。
sum = sum + term 累加每个数。
因为存在循环 sign 在正负之间跳。