c语言循环题目

简介: c语言循环题目

c语言循环题目

  1. 已知sinx的近似计算公式如下sin x=x- x3/3! + x’/5!-x7/7!+.+(-1)n-1x2n-1/(2n-1)!其中x为弧度,n为正整数。编写程序根据用户输入的x和n的值,利用上述近似计算公式计算sinx的近似值,要求输出结果小数点后保留8位
int main() {
    int n, j, i;
    int symbol = 1;   
    double x, sum = 0, all = 0;
    scanf("%d %lf", &n, &x);
    for (i = 0; i < n; i++) {
        // 计算分母的阶乘 (2i+1)!  
        int num1 = 1;
        for (j = 1; j <= 2 * i + 1; j++) {
            num1 *= j;
        }
        // 计算分子的次方 x^(2i+1)  
        double num2 = 1;
        for (j = 0; j < 2 * i + 1; j++) {
            num2 *= x; 
        }
        sum = symbol * num2 / num1;
        all += sum;
 
        symbol = -symbol; // 在每次迭代开始时更新符号  
    }
    // 输出sin(x)的近似值,保留8位小数  
    printf("%.8lf\n", all);
    return 0;
}
  1. 已知e”的近似值可由下面公式计算得出:ex=1 + x/1! + x²/2! + xЗ/3! + .x"/n!给定x和n,利用上述公式求得ex的近似值。
    【输入形式】从控制台输入小数x,和整数n(n>=1),用空格隔开。
int main() {
    double x, y = 1, sum = 1; 
    int i, n;
    scanf("%lf %d", &x, &n);
    for (i = 1; i <= n; i++) {
        // 计算x的i次方(只计算一次,而不是在每次迭代中都重新计算)  
        double a = 1;
        for (int j = 0; j < i; j++) {
            a *= x;
        }
        // 计算i的阶乘的倒数  
        double b = 1;
        for (int j = 1; j <= i; j++) {
            b /= j;
        }
        // 将当前项加到和中  
        y = a * b;
        sum += y;
    }
    printf("%lf\n", sum); // 输出结果  
    return 0;
}


相关文章
|
10天前
|
C语言
【C语言基础】:分支与循环
【C语言基础】:分支与循环
|
18天前
|
测试技术 C语言
数据结构学习记录——树习题—Tree Traversals Again(题目描述、输入输出示例、解题思路、解题方法C语言、解析)
数据结构学习记录——树习题—Tree Traversals Again(题目描述、输入输出示例、解题思路、解题方法C语言、解析)
14 1
|
23天前
|
算法 C语言 索引
C语言中的for循环:深入探索与实用技巧
C语言中的for循环:深入探索与实用技巧
16 1
|
24天前
|
C语言
C语言中如何避免循环死循环
C语言中如何避免循环死循环
18 1
|
3天前
|
C语言
C语言---正方形图案--循环
C语言---正方形图案--循环
|
3天前
|
C语言
C语言----循环---n的k次方
C语言----循环---n的k次方
|
3天前
|
C语言
C语言---循环迭代的方式求第n个斐波那契数
C语言---循环迭代的方式求第n个斐波那契数
|
3天前
|
C语言
C语言---循环迭代---n的阶乘
C语言---循环迭代---n的阶乘
|
3天前
|
C语言
C语言-----分支和循环
C语言-----分支和循环
33 0
|
26天前
|
C语言
C语言中的条件控制循环:深入解析与实战应用
C语言中的条件控制循环:深入解析与实战应用
30 1