多项选择题(2000年四川大学

对函数的使用方法描述正确的有【 】。

A、用数组做函数参数时,必须在主调函数和被调函数中分别定义数组

B、实参数组元素和形参数组元素类型可以不一致

C、形参数组长度可以不指定

D、形参数组长度可以大于实参数组长度

E、数组名做参数属于值传递

答案解析

ACD

关键词

数组;函数;语言;调用;定义;类型;参数;长度;元素;函数的调用;

在C语言的函数 void f(){static int i=0;…}说明中,静态变量i的作用域是______,生命周期是______,i的初始化是在______时进行的。(第1、2个空从A~C中选择,第3个空从D、E中选择)A.整个程序 B.函数f()所在的文件 C.函数f()内部D.编译 E.程序运行

递归过程与函数的设计可以使程序简明易读,易写而且时空效率大大提高。

在C语言中,数组名作为参数传递给函数,作为实在参数的数组名被处理为【 】

中国矿业大学函数的调用

中国矿业大学函数的调用

阅读下面程序,说明其功能。main(){ int a[10],b[10],i,n=0,m=0,k=0; printf("enter array a: "); for(i=0;i<10;i++) scanf("%d",&a[i]); printf(" "); printf("enter array b: "); for(i=0;i<10;i++) scanf("%d",&b[i]); printf(" "); for(i=0;i<10;i++){ if(large(a[i],b[i])==1)n=n+1; else if(large(a[i],b[i])==0)m=m+1; else k=k+1; } printf("a[i]>b[i] %d times a[i]=b[i] %d times a[i]<b[i] %d times ",n,m,k); if(n>k)printf("array a is larger than array b "); else if(n<k)printf("array a is smaller than array b "); else printf("array a is equal to array b ");}int large(x,y){ int flag; if(x>y)flag=1; else if(x<y)flag=-1; else flag=0; return flag;}

写出下面N-S图的程序,并说明其功能。

对于允许过程递归调用的语言在它的目标程序的运行环境平含少应有【 】

判断下列程序是来做什么的【 】double Func( double x1,double x2, double eps){ double x,A; x=x1; A=eps*(f(x1)+f(x2))/2; for(int j=0; j<(x2-x1)/eps; j++){ x+ =eps; A+ =eps*f(x); } return A;}

对任意个自然数n(1<n≤40),按递增顺序依次列出所有分母小于等于n的真分数(不可约分数)。