举一反三
- 下面程序的功能是计算 S= 0!+1!+2!+…+k! ( k>=0 )。 #include "stdio.h" long fun(int n) { int i; long s=1; for(i=1; ① ;i++) s*=i; return( ② ); } int main() { int k,n; long s; scanf("%d",&n); s= ③ ; for(k=0;k<=n;k++) s+= ④ ; printf("%ld\n",s); return 0; }
- 编写函数,求1!+2!+3!+ …+K!的和 long fac( ) { int i; long s,sum; s= ; sum= ; for(i=1;i<=K;i++) { s= ; sum= ; } return sum; } void main( ) { int K; scanf("%d",&K); printf("1!+2!+...+K!=%ld\n", fac(K)); }
- 下面的程序是求1!+3!+5!+……+n!的和。 #include main { long int f,s; int i,j,n; (1) ; scanf("%d",&n); for(i=1;i<=n; (2) ) { f=1; for(j=1; j<=i;j++) (3); s=s+f; } printf("n=%d,s=%ld ",n,s); }
- 输入正整数n,计算s = 1/1! + 1/2! + 1/3! + ……+ 1/n!的值。 #include int main { int j, k, n; double f, s; scanf("%d", &n); s= (1) ; for (k=1; k<=n; k++) { f= (2) ; for(j=1; (3) ; j++) f= (4) ; s=s+1/f; } printf("sum=%f ", s); return 0; }
- 中国大学MOOC: 下列程序的功能是输出数组s中最大元素的下标。#include <stdio.h> int main(){int k,i;int s[]={3,-8,7,2,-1,4};for(i=0,k=0;i<6;i++)if(s[i]>s[k]) ;printf("k=%d\n", k);return 0;}
内容
- 0
分析以下算法的时间复杂度。void fun( int n)i{ int s = 0,i,i,k; for (i - 0; i<= n; i++ ) for (j= 0;j<=i;j++) for (k = 0;k<j;k++) s tt ;}
- 1
下列程序段可以正确运行的有: A: int i,s,x;s=0;i=0;while(1){ scanf("%d",&x); if(x!=-1) { s=s+x; i++; } else break;}printf("ave=%d\n",s/i); B: int i,s,x;s=0;i=0;scanf("%d",&x);while(x!=-1){ s=s+x; i++; scanf("%d",&x);}printf("ave=%d\n",s/i); C: int i,s,x;s=0;i=0;while(1){ scanf("%d",&x); if(x==-1) break; s=s+x; i++; }printf("ave=%d\n",s/i);
- 2
以下函数的功能是计算s=1+1/2!+1/3!+……+1/n!,请填空。 double fun(int n) { double s=0.0,fac=1.0; int i; for(i=1;i<=n;i++) { fac=fac 【 】; s=s+fac; } return s; }
- 3
设数组a中的元素均为正整数,以下程序是求a中偶数的个数和偶数的平均值。请填空。# include< stdio.h>int main( ){ int a[10]={1,2,3,4,5,6,7,8,9,10};int k,s,i;float ave;for(k=s=i=0;i<10;i++){ if(a[i]%2 !=0)( );s+=( );k++;}if( k!=0 ){ ave = s/k;printf("%d,% f\n",k,ave);}return 0;}
- 4
下列函数能够求n的阶乘n!的是 A: f = lambda n: n! B: def f(n): s=1 for i in range(n): s = s * i return s C: def f(n): s=1 for i in range(n,0,-1): s = s * i return s D: def f(n): if n == 1: return 1 else: return f(n-1)*n