更多"下面是一个递归函数,其功能是使数组中的元素反序排列。请将函数补充完整。"的相关试题:
[简答题]试写出将给定的一个正整数如8479按其反序9748输出的一个递归函数
[多项选择]【函数2.1说明】
递归函数sum(int a[], int n)的返回值是数组a[]的前n个元素之和。
【函数2.1】
int sum (int a[],int n)
if(n>0) return (1) ;
else (2) ;
【函数2.2说明】
有3个整数,设计函数compare(int a,int b,int c)求其中最大的数。
【函数2.2】
int compare (int a, int b, int c )
int temp, max;
(3) a:b;
(4) temp:c;
【函数2.3说明】
递归函数dec(int a[],int n)判断数组a[]的前n个元素是否是不递增的。不递增返回 1,否则返回0。
【函数2.3】
int dec( int a[], int n )
if(n<=1) return 1;
if(a[0]<a[1]) return 0;
return (5) ;
[简答题]【函数2.1说明】
递归函数sum(int a[], int n)的返回值是数组a[]的前n个元素之和。
【函数2.1】
int sum (int a[],int n)
{
if(n>0) return (1) ;
else (2) ;
}
【函数2.2说明】
有3个整数,设计函数compare(int a,int b,int c)求其中最大的数。
【函数2.2】
int compare (int a, int b, int c )
{ int temp, max;
(3) a:b;
(4) temp:c;
}
【函数2.3说明】
递归函数dec(int a[],int n)判断数组a[]的前n个元素是否是不递增的。不递增返回 1,否则返回0。
【函数2.3】
int dec( int a[], int n )
{
if(n<=1) return 1;
if(a[0]<a[1]) return 0;
return (5) ;
}
[填空题]下面是计算n的阶乘的递归函数,请将该函数的定义补充完整。
unsigned f(unsigned n)
if(n<=1) return 1;
else return 【10】 ;
[简答题]简单应用题
请编写一个函数inlinelongsum(intn),用递归函数完成运算:sum(n)=1*1+2*2++n*n,递归表达式为sum(n)=sum(n-1)+n2。
注意:部分源程序已存在文件kt10_2.cpp中。
请勿修改主函数main和其他函数中的任何内容,仅在函数sum的花括号中填写若干语句。
文件kt10_2.cpp的内容如下:
#include
inlinelongsum(intn)
{
}
voidmain( )
{ intn;
cout<<"输入n:";
cin>>n;
cout<<"结果为:"<
[单项选择]下列函数中,哪项是正确的递归函数( )。
A. if(n<1) return 1;
B. else
C. return n*Fun(n+1);
D. B) int Fun(ira n)
E. if(abs(n)<1) return 1;
F. else
G. return n*Fun(n/2);
H. C) int Fun(int n)
I. if(n>1) return 1;
J. else
K. return n*Fun(n*2)1
L. D) int Fun(int n)
M. if(n>1)return 1;
N. else
O. retun n*Fun(n-1);
[简答题]请编写一个函数inline long sum(int n),用递归函数完成运算:sum(n)=1*1+2*2+…n*n,递归表达式为 sum(n)=sum(n-1)+n2。
注意:部分源程序已存在文件test10_2.cpp中。
请勿修改主函数main和其他函数中的任何内容,仅在函数sum的花括号中填写若干语句。
文件test10_2.cpp的内容如下:
#include<iostream.h>
inline long sum(int n)
void main( )
int n;
cout<<"输入n:";
cin>>n;
cout<<"结果为:"<<sum(n)<<endl;
[填空题]下面是用来计算n的阶乘的递归函数,请将该函数的定义补充完整。(注:阶乘的定义是n!cn*(n-1)*...*2*1)
unsigned fact(unsigned n)
if (n<=1)
return 1;
return 【12】 ;
[填空题]下面是用来计算n的阶乘的递归函数,请将该函数的定义补充完整。(注:阶乘的定义是n!=n*(n-1)*...*2*1)
unsigned fact (unsigned n)
{
if(n<=1)
retum 1;
return 【12】 ;
}
[简答题]【说明】
函数QuickSort是在一维数组A[n]上进行快速排序的递归算法。
【函数】
void QuickSort( int A[ ],int s,int t)
{ int i=s,j=t+1,temp;
int x=A[s];
do{
do i ++ ;while (1) ;
do j -- ;while(A[j]>x);
if(i<j){temp=A[i]; (2) ; (3) ;}
}while(i<j);
A[a] =A[j];A[j] =x;
if(s<i-1) (4) ;
if(j+1<t) (5) ;
}
[简答题]【说明】
函数QuickSort是在一维数组A[n]上进行快速排序的递归算法。
【函数】
void QuickSort( int A[ ],int s,int t)
int i=s,j=t+1,temp;
int x=A[s];
do
do i ++ ;while (1) ;
do j -- ;while(A[j]>x);
if(i<j)temp=A[i]; (2) ; (3) ;
while(i<j);
A[a] =A[j];A[j] =x;
if(s<i-1) (4) ;
if(j+1<t) (5) ;
[简答题]请编写函数fun,其功能是求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。
例如,输入如下整数:
876 675 896 101 301 401 980 431 451 777
则输出结果为:
6,980
注意:部分源程序在文件PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
文件PROG1.C内容如下:
#include<stdio.h>
void fun(int *s,int t,int *k)
void main( )
int a[10]=876,675,896,101,301,401,980,431,451,777,k;
fun(a,10,&k);
printf("The resuh:%d,%d/n",k,a[k]);
[单项选择]以下程序中函数reverse的功能是将a所指数组中的内容进行逆置:
void reverse(int a[ ],int n)
int i,t;
for(i=0;i<n/2l;i++)
t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;
main( )
int b[10]=1,2,3,4,5,6,7,8,9,10; int i,s=0;
reverse(b,8);
for (i=6;i<10;i++) s+=b[i];
printf("%d/n",s);
程序运行后的输出结果是( )。
A. 22
B. 10
C. 34
D. 30
[单项选择]以下程序中函数reverse的功能是对a所指数组中的内容进行逆置。
void reverse(int a[], int n)
int i, t;
for(i=0; i<n/2; i++)
t=a[i]; a[i]=a[n-1-1]; a[n-1-i]=t;
main( )
int b[10]=1, 2, 3, 4, 5, 6, 7, 8, 9, 10;
int i, s=0;
reverse(b, 8);
for(i=6; i<10; i++)
s+=b[i];
printf("% d/n", s);
程序运行后的输出结果是______。
A. 22
B. 10
C. 34
D. 30