//程序功能:输入一个整数n,求1/1-2/3+3/5-4/7+5/9-6/11+……的前n项之和
#include <stdio.h>
int main()
{
int i, n;
float sum = 0, flag = 1.0;
printf("Input n:");
scanf("%d", &n);
for (i = 1; i <= n; i++) //循环n次
{
sum = sum + flag * i / (2 * i - 1); //累加一项
flag = -flag; //改变累加项的符号
}
printf("Sum = %f\n", sum);
system("pause");
return 0;
}
实验6.2
//程序功能:求前n项阶乘之和
#include <stdio.h>
int main()
{
int n, i;
double sum = 0, product = 1; //声明并赋初值
printf("Input n:");
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
product = product * i; //计算阶乘
sum = sum + product; //累加一项
}
printf("sum = %Lf\n", sum);
system("pause");
return 0;
}
实验6.3
//利用级数n(n<=1e-6),求cos(x)的值
#include <stdio.h>
#include <math.h> //引入头文件
#define EPS 1e-6 //宏定义EPS=1e-6
int main()
{
double n = 1, cosx, t;
float x;
printf("Please input x:");
scanf("%f", &x);
t = 1;
cosx = 0;
do
{
cosx = cosx + t;
t = -t * x * x / ((2 * n) * (2 * n - 1)); //计算第n项的阶乘
n = n + 1;
} while (fabs(t) > EPS); //循环终止条件:第n项的绝对值小于1e-6
printf("cos(%f)=%0.8f\n", x, cosx);
system("pause");
return 0;
}
实验6.4
/*程序功能:统计输入字符中,英文(letters),空格(space),数字(digit)
和其他字符(other的个数)*/
#include <stdio.h>
int main()
{
char ch;
int letters = 0, spaces = 0, digit = 0, other = 0;
printf("Please input some characters: \n");
while ((ch = getchar()) != '\n') //输入回车键终止循环
{
if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z'))
letters++; //计算字母
else if (ch == ' ')
spaces