D)DEFABC
(32)某人为计算 n!(0<n<=12)编写了下面的函数过程:
Private Function fun(n As Integer) As Long
Dim p As Long
p=1
For k=n-1 To 2 Step-1
p=p*k
Next k
fun=p
End Function
在调试时发现该函数过程产生的结果是错误的,程序需要修改。下面的修改方案中有3 种是正确的,错误
的方案是( )。
A)把 p=1 改为 p=n
B)把 For k=n-1 To 2 Step-1 改为 For k=1 To n-1
C)把 For k=n-1 To 2 Step-1 改为 For k=1 To n
D)把 For k=n-1 To 2 Step-1 改为 For k=2 To n
第1题:
某人为计算n!(0<n<=12)编写了下面的函数过程:
Private Function fun(n As Integer)As Long
Dim P As Long
P=1
For k=n-1 To 2 Step-1
P=P*k
Next k
fun=P
EndFunction
在调试时发现该函数过程产生的结果是错误的,程序需要修改。下面的修改方案中有3种是正确的,错误的方案是
A.把P=1改为P=n
B.把For k=n-1 To 2 Step-1改为For k=1 To n-l
C.把For k=n-1 T02 Step-1改为Fork=1 To n
D.把For k=n-1 To 2 Step-l改为FOr k=2 To n
第2题:
请补充函数fun(),该函数的功能是:输出一个N×N矩阵,N由键盘输入,矩阵元素的值为随机数,并计算出该矩阵四周边元素的平均值,结果由函数返回。例如:当N=4时:
注章:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
试题程序;
include<stdio.h>
include<conio.h>
include<stdlib.h>
define N 20
double fun(int a[ ][N],int n)
{
int i,j;
int k;
double s=0.0;
double aver=0.0;
printf("*****The array*****\n");
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
a[i][j]=rand()%10;
printf("%4d",a[i][j]);
if(【 】)
s+=a[i][j];
}
printf("\n");
}
k=【 】;
aver=【 】;
return aver;
}
main( )
{
int a[N][N];
int n;
double S;
Clrscr( );
printf("*****Input the dimension Of array N*****\n");
scanf(“%d”,&n);
S=fun(a,n);
printf(“***** THE RESULT *****\n”);
printf(“The average is %2,3f\n”,S);
}
第3题:
试题2
本程序中,函数fun的功能是计算整数n的阶乘。程序中存在若干错误,请找出并改正。(注意:不改动程序的结构,不得增行或删行。)
#include <stdio.h>
double fun(int n)
{ double result=1.0;
while (n>1 && n<170)
result*=- -n;
return;
}
main()
{ int n;
clrscr ();
printf(“Enter an integer:”) ;
scanf(“%d”,&n);
printf(“\n\n%d!=%lg\n\n”,n,fun(n)) ;
nono ();
{int n,i;
FILE *rf, *wf ;
rf = fopen (“g03.in”,“r”) ;
wf = fopen(“g03.out”,“w”) ;
for (i=1; i<=10;i++)
{ fscanf(rf, “%d”,&n) ;
fprintf (wf, “%lg\n”,fun( n ) );
}
fclose (rf) ;
fclose (wf) ;
}
第4题:
请编写一个函数void fun(int a [],int n),其中a为数组,n为数组a的长度。函数fun()的功能是冒泡排序法将数组a元素按从小到大的顺序排列,实现数组a的升序排列。
注意:部分源程序已存在文件PROC12.cpp中。
请勿修改主函数和其他函数中的任何内容,仅在函数fun()的花括号中填写若干语句。
文件PROC12.cpp的内容如下:
//PROC12. cpp
include <iostream>
using namespace std;
define MAX 100
void fun(int a[],int n);
int main ()
{
int a[MAX],n,i;
cout<<"Please enter the array size n:\n";
do {
cin>>n;
if (n>100)
cout<<"array size flowover! ReEnter a number(0-100)\n";
}while (n>100);
cout<<"Enter the array data:\n";
for (i=0; i<n; i++)
cin>>a [ii;
fun(a[],n);
for (i=0; i<n; i++)
cout<<a [i] <<" ";
cout<<end1;
return 0;
}
void fun(int a[ ],int n)
{
// * * * * * * * *
}
第5题:
函数定义为Fun(int&i),变量定义n=100,则下面调用正确的是( )。
A.Fun(20);
B.Fun(20+n);
C.Fun(n);
D.Fun(&n);