参考答案和解析
正确答案:P=P*I
P=P*I 解析:本题中,程序采用了双重循环,内循环计算N的阶乘,即1-N个自然数连乘,结果保存在变量P中,内循环结束时,N的阶乘完毕。题中要求计算 S=1!+2!+…+10!的值,应将每次求出的乘积累加起来,放在变量s中。在Visual FoxPro中,程序的基本结构有顺序结构、选择结构和循环结构3种。
更多“下列程序的功能是计算S=1!+2!+…+10!的值,完成程序填空。 S=0 FOR N=1 TO 10 P=1 FOR I=1 TO N 【】 ”相关问题
  • 第1题:

    要求以下程序的功能是计算: s=1 + 1/2 + 1/3 + ... + 1/10, 但运行后输出结果错误,导致错误结果的程序行是 int main (void){ int n; float s; s=1.0; for(n=10; n>1; n--) s=s+1/n; printf("%6.4fn",s); return 0; }

    A.int n; float s;

    B.for(n=10; n>1; n--) s=s+1/n;

    C.s=s+1/n;

    D.s=1.0;


    C 解析:程序中由于n为整型,所以1/n的结果始终为0,故程序最后输出的结果为0,其结果错误,原因为在表达式1/n中1和n均为整型,所以应该将1改为1.0,这样表达式1.0/n的值不为0,为该数学表达式的值,因此我们可以知道导致程序运行后输出结果错误的行为s=s+1/n;,所以,4个选项中选项C符合题意。

  • 第2题:

    以下程序的功能是计算:s= 1+1/2+1/3+……+1/10,程序运行后输出结果错误,导致错误结果的程序行是#include <stdio.h> int main() { int n; float s; s=1.0; for(n=10;n>1;n--) { s=s+1/n; } printf("%6.4fn",s); return 0; }

    A.s=s+1/n;

    B.printf("%6.4fn",s);

    C.for(n=10;n>1;n--)

    D.s=1.0;


    C 解析:程序中由于n为整型,所以1/n的结果始终为0,故程序最后输出的结果为0,其结果错误,原因为在表达式1/n中1和n均为整型,所以应该将1改为1.0,这样表达式1.0/n的值不为0,为该数学表达式的值,因此我们可以知道导致程序运行后输出结果错误的行为s=s+1/n;,所以,4个选项中选项C符合题意。

  • 第3题:

    【填空题】下面函数的功能是根据公式s=l-1/3+1/5-1/7+...+(-1n )/(2*n+1)计算s,计算结果通过形参指针sn传回。n通过形参传入,n的值大于等于0。请填空使程序完整、正确。 void fun(float *sn,int n) { float s=0.0,w,f=-1.0;int i=0; for(i=0;i<=n;i++) { f=(1____)=s; }


    A

  • 第4题:

    20、以下程序的功能是计算:s= 1+1/2+1/3+……+1/10,程序运行后输出结果错误,导致错误结果的程序行是 #include <stdio.h> int main() { int n; float s; s=1.0; for(n=10;n>1;n--) { s=s+1/n; } printf("%6.4f\n",s); return 0; }

    A.s=s+1/n;

    B.printf("%6.4f\n",s);

    C.for(n=10;n>1;n--)

    D.s=1.0;


    D

  • 第5题:

    以下程序的功能是计算:s= 1+1/2+1/3+……+1/10,程序运行后输出结果错误,导致错误结果的程序行是 #include <stdio.h> int main() { int n; float s; s=1.0; for(n=10;n>1;n--) { s=s+1/n; } printf("%6.4fn",s); return 0; }

    A.for(n=10;n>1;n--)

    B.s=1.0;

    C.s=s+1/n;

    D.printf("%6.4fn",s);


    C 解析:程序中由于n为整型,所以1/n的结果始终为0,故程序最后输出的结果为0,其结果错误,原因为在表达式1/n中1和n均为整型,所以应该将1改为1.0,这样表达式1.0/n的值不为0,为该数学表达式的值,因此我们可以知道导致程序运行后输出结果错误的行为s=s+1/n;,所以,4个选项中选项C符合题意。