原题目有误,请忽略原题目、完成本题目。编写程序实现以下功能:计算C(1,n)+C(2,n)+...+C(m,n)的值。其中,m和n是两个正整数,且m小于或等于n,C(i,n)=n!/i!/(n-i)!(这里的!表示阶乘,i在1~m上依次取值)。要求计算C(i,n)的功能用函数实现。

原题目有误,请忽略原题目、完成本题目。编写程序实现以下功能:计算C(1,n)+C(2,n)+...+C(m,n)的值。其中,m和n是两个正整数,且m小于或等于n,C(i,n)=n!/i!/(n-i)!(这里的!表示阶乘,i在1~m上依次取值)。要求计算C(i,n)的功能用函数实现。


参考答案和解析
A

相关考题:

以下程序中函数 fun 的功能是:统计 person 所指结构体数组中所有性别 (sex) 为 M 的记录的个数 , 存入变量 n 中,并做为函数值返回。请填空:#include stdio.h#define N 3typedef struct{ int num;char nam[10]; char sex;} SS;int fun(SS person[]){ int i,n=0;for(i=0;iN;i++)if( 【 14 】 =='M') n++;return n;}main(){ SS W[N]={{1, "AA", 'F'},{2, "BB",'M'},{3,"CC", 'M'}}; int n;n=fun(W); printf("n=%d\n",n);}

下列给定程序中,函数fun()的功能是求出数组中最小数和次最小数,并把最小数和a[0]中的数对调,次最小数和a[1]中的数对调。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include <conio.h>include <stdio.h>define N 20void fun(int *a,int n){int i, m,t,k;/*************found**************/for(i=O; i<n; i++){m==i;for(k=i; k<n; k++)if(a[k]<a[m])/*************found**************/k=m;t=a[i];a[i]=a[m];a[m]=t;}}main(){int x,b[N]={11,5,12,0,3,6,9,7,10,8},n=10,i;clrscr();for(i=0; i<n; i++)printf("%d",b[i]);printf("\n");fun(b,n);for(i=0; i<n; i++)printf("%d",b[i]);printf("\n");}

以下程序中的select()函数功能是:在N行M列的二维数组中选出一个最大值作为函数值返回,并通过形参传回此最大值的行下标。请填空完成此程序。include<iostream>define N 3define M 3using namespace std;int select(int a[N][M],int *n){int i,j,row=0,colum=0;for(i=0;i<N;i++)for(i=0;j<M;j++)if(a[i][j]>a[row][colum]){row=i;colum=j;}*n=【 】;return 【 】;}int main(){int a[N][M]={9,11,23,6,1,15,9,17,20};int max,n;max=select(a,n);cout<<"max="<<max<<"line="<<n<<end1;return 0;}

以下程序中,select 函数的功能是:在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标。请填空。#define N 3#define M 3select(int a[N][M],int *n){int i,j,row=1,colum=1;for(i=0;ifor(j=0;jif(a[i][j]a[row][colum]){row=i;colum=j;}*n= 【16】 ;return 【17】 ;}main(){int a[N][M]={9,11,23,6,1,15,9,17,20},max,n;max=select(a,n);printf("max=%d,line=%d\n",max,n);}

函数fun的功能是:根据以下公式求p的值,结果由函数值返回。m与n为两个正数且要求mn。例如:m=12,n=8时,运行结果应该是495.000000。请在题目的空白处填写适当的程序语句,将该程序补充完整。#include#includefloat fun (int m, int n){ int i;double p=1.0;for(i=1;i=m;i++)( );for(i=1;i=n;i++)( );for(i=1;i=m-n;i++)p=p/i;return p;}main (){ clrscr();printf ("p=%f\n",fun (12,8));}

递延期为m期,连续支付n期,每期支付A元,折现率为i的递延年金现值等于 ( )。A.A×(P/A,i,n)×(P/S,i,m)B.A×[(P/A,i,m+n)-(P/A,i,m)]C.A×[(P/A,i,m+n)×(P/A,i,m)]D.A×(S/A,i,n)×(P/S,i,m+n)

下列给定程序中,函数fun()的功能是:给一维数组a输入任意4个整数,并按如下的规律输出。例如输入1,2,3,4,程序运行后输出以下方阵:4 1 2 33 4 1 22 3 4 11 2 3 4请改正程序中的错误,使它能得出正确的结果。注意;不要改动main 函数,不得增行或删行,也不得更改程序的结构。试题程序;include <stdio.h>define M 4/*******************************/void fun(int a){int i,j,k,m;printf("Enter 4 number: ");for (i=0; i<M; i++) scanf ("%d", a [i] );printf ("\n\n The result : \n\n ");for (i=M; i>0; i--){ k=a [M-1];for (j=M-1; j>0; j--)/**********************************/a[j]=a[j+1];a[0]=k;for (m=0 ;m<M; m++ ) printf ("%d ", a [m]);printf ("\n ");}}main (){int a [M];fun(a); printf("\n\n ");}

请编写函数fun,它的功能是:求任意两个正整数的最小公倍数和最大公约数,最小公倍数放在指针变量bei所指的变量中,最大公约数放在指针变量yue所指的变量中。注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。vOid fun(int m,int n,int*bei,int*yue){int s=l,i;if(m>n){s=m;m=n;n=S;}for(i=2,s=1;i<m i++)if((m%i=0)(n%i=0)){}*yue=s;*bei=S*m*n;}main( ){int a,b,beishu,yueshu;chscr( );printf("please input a,b:");scanf("%d,%d,"a,b);fun(a,b,beishu,yueshu);printf("a,b beishu:%d\n",beishu);printf("a,b yueshu:%d\n",Yueshu);}

阅读下列函数说明和C代码,填入(n)处。[说明]以下C语言程序实现了生成从里到外是连续的自然数排列的回旋矩阵,矩阵形式如下:7 6 5 168 1 4 159 2 3 1410 11 12 13程序的变量说明如下:x1:矩阵上边界;x2:矩阵下边界;y1:矩阵左边界;y2:矩阵右边界;s:数组元素升降标记,s等于1为升,s等于-1为降;a[]:存放矩阵元素的数组。仔细阅读C语言程序源码,将(n)处的语句补充完整。(注:每处仅一个语句)[C程序]include<stdio.h>void main ( ){const int N=20;int i=0,j=0,a[N][N],n;int m,x1,x2,y1,y2,s;while (1){Printf ("\ninput matrix row N( N>=2): ");scanf ("%d",n);printf ("\n");if (n>=2)break;}m=n*n;x1=0; y1=0; x2=n; y2=n;if(n%2==0){j=n-1; y2=n-1; s=1;}else{i=n-1; y1=1; s=-1; }while (1){if (s==1){for (i; i<x2; i++) a[i][j]=m--;i--;j--;(1)for (j;j>=y1;j--) a[i][j]=m--;j++;i--;y1++;(2)}else{for (i;i>=x1;i--)a[i][j]=m--;i++;j++;(3)for (j;j<y2;j++)(4)(5)i++;(6)S=i;}if (m<1) break;}for (i=O;i<n; i++){for (j=O;j<n;j++)printf ("%6d",a[i][j]);printf ("\n");}printf ("\n");}

以下程序的执行结果是______。 main() { int i,j,m=O,n=0; for (i=0;i<2;i++) {for (j=0;j<2;j++) if(j>=i) m=1;n++; printf("%d\n",n); } }A.4B.2C.1D.0

下列递延年金的计算式中正确的是( )。A.P=A×(P/A,i,n)×(P/F,i,m)B.P=AX(F/A,i,n)×(P/F,i,m)C.P=A×E(P/A,i,m+n)-(P/A,i,m)]D.P=A×(F/A,i,n)×(P/F,i,n+m)

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。【说明】有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数。【函数】main(){int number[20],n,m,i;printf("the total numbers is:");scanf("%d",n);printf("back m:");scanf("%d",m);for(i=0;i<=n-1;i)scanf("%d,",number[i]);(1);for(i=0;i<=n-1;i)printf("%d,",number[i]);}move(array,n,m)int n,m,array[20];{int *p,array_end;array_end=(2);for(p=array[n-1];(3);p--)*p=(4);*array=array_end;m--;if(m>0) (5);}

阅读以下说明和C语言程序,将应填入(n)处的字句写在对应栏内。【说明】计算n的合数。一个整数n可以有多种划分,使其划分的一列整数之和为n。例如,整数5的划分为:54 13 23 1 12 2 12 1 1 11 1 1 1 1共有7种划分。这种划分的程序如下所示。【程序】include <stdio.h>int n[1000],m,k;void output sum(){int j;for(j=0;n[j]!=0;j++)printf("%d\t",n[j]);printf("\n");}void sum(int i)if(m-n[i]<n[i]){ m=m-n[i];(1)i++;n[i+1]=0;}else{(2)m-=n[i];i++;}if(m!=n[i])sum(i);elseoutput_sum();if(n[i]>1){n[i]--;(3)}else{while((n[i]==1)(i>O)){i--;(4)}if(i!=0){(5)sum(i);}}}void main(){int i;scanf("%d",n[0]);m=k=n[0];for(i=1;i<=k;i++)n[i]=0;while(n[0]!=1){n[0]--;i=0;sum(0);m=k;}}

以下程序的功能是调用函数fun计算m=1-2+3-4+…+9-10,并输出结果,请填空。int fun( int n){ int m=0,f=1,i; for(i=1;i=n;i++) { m+=i*f; f=-f; } return m;}main{ printf("m=%d\\n",); }

以下程序中,函数 sumColumM的功能是:求出M行N列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。define M 2define N 4void SumColumMin(int a[M][N],int *sum){ int i,j,k,s=0;for(i=0;i〈N;i++){ k=0;for(j=1;j<M;j++)if(a[k][i]>a[j][i])k=j;s+=【 】;}【 】 =s;}main( ){ int x[M][N]={3,2,5,1,4,1,8,3},s;SumColumMin(【 】);printf("%d\n",s);}

A)(仕兰微面试题目)#i ncludevoid testf(int*p){*p+=1;}main(){int *n,m[2];n=m;m[0]=1;m[1]=8;testf(n);printf("Data v alue is %d ",*n);}------------------------------B)#i ncludevoid testf(int**p){*p+=1;}main(){int *n,m[2];n=m;m[0]=1;m[1]=8;testf(n);printf(Data v alue is %d",*n);}下面的结果是程序A还是程序B的?Data v alue is 8那么另一段程序的结果是什么?

下列程序中函数fun的功能是:统计person所指结构体数组中所有性别(sex)为M的记录的个数,存入变量n中,并作为函数值返回。请填空。include <stdio.h>define N 3typedef struct{ int num; char nam[10]; char sex;} SS;int fun(SS person[]){ int i,n=0;for(i=0; i<N; i++)if(【 】=='M') n++;return n;}main(){ SS W[N]={{1,"AA",'F'},{2,"BB",'M'},{3,"CC",'M'}}; int n;n=fun(W); printf("n=%d\n", n);}

【程序】SET TALK OFFCLEARINPUT“N=”TO NINPUT“M=”TO MX=MIN(N,M)FOR I=X TO 1 STEP -1IF M/I=INT(M/I)AND N/I=INT(N/I)Y1=IEXITENDIFENDFOR?“Y1=”+ALLTRIM(STR(Y1,19))+“,Y2=”+ALLTRIM(STR(M,N)/Y1,19))SET TALK ON若输入N、M的值分别为6,8,则Y1的输出结果为 ______。A.0B.1C.2D.3

以下程序的输出是【】。 include using namespace std; fun(intm) { static int n=1; n=m 以下程序的输出是【 】。include<iostream>using namespace std;fun(intm){static int n=1;n=m*n;return(n);}void main(){int i;for(i=1;i<=3;i++) cout<<fun(i);}

请补充函数fun(),该函数的功能是:寻找两个整数之间的的所有素数(包括这两个整数),把结果保存在数组bb中,函数返回素数的个数。例如,输入6和21,则输出为:7 11 13 17 19 21。注意:部分源程序给出如下。请勿改动主函数main 和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。试题程序:include<conio. h>include<stdio. h>define N 1000int fun (int n, int m, int bb [N]){int i, j, k=0, flag;for (j=n; j<=m; j++){【 】;for (i=2; i<j; i++)if(【 】){flag=0;break;}if(【 】)bb [k++] =j}return k;}main (){int n=0,m=0, i, k;int bb[N];clrscr ();printf ("Input n\n");scanf ("%d", n);printf ("Input m\n");scanf ("%d", m);for (i=0; i<m-n; i++)bb[i]=0;k=fun (n, m, bb);for (i=0; i<k; i++)printf ("%4d",bb [i]);}

请完成函数fun(),它的功能是:用选择法对数组中n个元素按从大到小的顺序进行排序。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在下划线上填入所需的内容。include<stdio.h>define N 20void fun(int a[],int n){int i,j,t,p;for(j=0;j<n-1; 1 ){ p=j;for(i=j;i<n;i++)if(a[i] 2 a[p]p=i;t=a[p];a[p]=a[j];a[ 3 ]=t;}}main(){int a[N]={11,32,-5,2,14},i,m=5;for(i=0;i<m;i++)printf("%d\n",a[i});fun(a,m);for(i=0;i<m;i++)printf("%d"a[i]);}

已知有二维数组A[0..n-1][0..n-1],其中当i+j=n时,A[i][j]≠0,现在要将A数组压缩存储到一维数组T[0..m],其中m>n。数组T的第一个元素T[0]=A[1][n-1] T[1]=A[2][n-2],……,依次类推,那么放入A[i][j](i+j=n)的元素是(37)。A.T[i+j]B.T[i*n+j]C.T[i]D.T[i-1]

如果债券按单利计算,并且一次还本付息,其价格决定公式为( )(面值为M)。A.P=M(1+I·n)/(1+r·n)B.P=(M·I·n)/(1+r·n)C.P=M(1+I)n/(1+r)nD.P=Min/(1+r)n

某人第1年年末借款M元,利率为i,按约定从第3年开始到第n年等额还清所有借款,则在第3年到第n年间,每年需偿还()元。A:M[i(1+i)n-1]/[(1+i)n-2-1]B:M[i(1+i)n-3]/[(1+i)n-2-1]C:M[i(1+i)n-2]/[(1+i)n-2-1]D:M[i(1+i)n-3]/[(1+i)n-3-1]

以下for语句构成的循环执行的次数是()     #include      #define N 2  #define M N+l  #define NUM(M+1)*M/2      main( )  {int i,n=0;  for(i=1;i=NUM;i++)        {n++;printf(“%d”,n);}        printf(“/n”);} A、5B、6C、8D、9

以下程序段的输出结果是() int a[7]={9,15,7,-3,0,11,15},m,n,i;for(m=n=0,i=1;i7;i++) if(a[i]a[m])m=i; elseif(a[i]printf("%d,%d/n",m,n)A、15,-3B、6,3C、1,3D、2,4

计算递延年金的现值时,下列表达式中(n表示连续收支期数,m表示递延期)正确的有()。A、P=A×(P/A、i、n)(P/F、i、m)B、P=A×[(P/A、i、m+n)-(P/A、i、m)]C、P=A×(F/A、i、n)(P/F、i、m+n)D、P=A×(P/A、i、m+n)(P/F、i、n)

多选题计算递延年金的现值时,下列表达式中(n表示连续收支期数,m表示递延期)正确的有()。AP=A×(P/A、i、n)(P/F、i、m)BP=A×[(P/A、i、m+n)-(P/A、i、m)]CP=A×(F/A、i、n)(P/F、i、m+n)DP=A×(P/A、i、m+n)(P/F、i、n)