单选题以下程序段是函数返回a所指数组中最大的值所在的下标值,横线处的语句为(  )。Ak=iBk=jCi=jDi=n

单选题
以下程序段是函数返回a所指数组中最大的值所在的下标值,横线处的语句为(  )。
A

k=i

B

k=j

C

i=j

D

i=n


参考解析

解析:
函数fun定义整型变量k用来存放返回最大值的下标,并将其首先指向第一个元素,即k=j。然后在for循环中依次将当前元素a[i]与标识为最大值的元素进行比较,如果当前元素大于这个标识元素,那么将最大值标识为当前元素,即k=i。

相关考题:

以下函数返回a所指数组中最小的值所在的下标值 fun(int *a,int n) { int i,j=0,p; p=j for(i=j;i<n;i++) if(a[i]<a[p])______; return(p);} 在横线处应填入的是A.i=pB.a[p]=a[i]C.p=jD.p=i

已知a所指的数组中有N个元素。。函数fun的功能是,将下标k(k0)开始的后续元素全部向前移动一个位置填空。void fun(int a[N],int k){int i:for(i=k;i ]=—a[i];}

以下函数模板min的功能是返回数组a中最小元素的值。请将横线处缺失部分补充完整。template<typename T>T min(T a[],int n){T temp=a[0];for(int i=1,i<n;i++)if(a[i]<temp)______;return temp;}

以下函数返回a所指数组中最小的值所在的下标值fun(int *a, int n){ int i,j=0,p;p=j;for(i=j;in;i++)if(a[i]a[p]); ________;return(p);}在横线处应填入的是A.i=pB.a[p]=a[i]C.p=jD.p=i

以下程序段是函数返回a所指数组中最大的值所在的下标值,横线处的语句为( )。 fun(int*a, int n) { int i,j=0,k; k=j; for(i=j;i<n;i++) if[a[i]>a[k])______; return(k); }A.k=iB.k=jC.i=jD.i=n

试题二下面程序中函数fun的功能是:在含有10 个元素的s数组中查找最大数,及最大数所在位置(即,下标值),最大数可能不止一个。最大数作为函数值返回,最大数的个数通过指针变量n传回,所在位置由数组pos传回。例如:若输入 2 8 5 7 8 4 5 3 2 8则应输出:The max: 8Total: 3 //最大数出现次数The positions: 1 4 9请补充下列空缺:includestdio.hincludeconio.hdefine M 10int fun(int *a, int *n, int pos[]){int i, k,max=-32767;(1)for(i=0; iM; i++)if( (2) ) max=a[i];for(i=0; iM; i++)if( (3) )pos[k++]=i;*n=k;return max;}main(){int a[M], pos[M], i=0, j, n;clrscr();printf(Enter 10 number :);for(i=0; iM; i++)scanf(%d, (4));j=fun( (5) );printf(The max: %d\n, j);printf(Total: %d,n);printf(The position:);for(i=0; in; i++ ) printf(%4d, pos[i]);printf(\n);}

请编一个函数void fun( int tt[M][N], int pp[N], tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指的一维数组中。二维数组中的数已在主函数中给出。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:include <conio.h>include <stdio.h>define M 3define N 4void fun(int tt[M][N],int pp[N]){}main(){int t[M] [N]={{68,32,54,12},{14,24,88,58},{42, 22, 44, 56}};int p[N],i,j,k;clrscr();printf("The riginal data is:\n");for(i=0;i<M;i++){for(j=0;j<N;j++)printf("%6d",t[i][j]);printf("\n");}fun(t,p);printf("\nThe result is:\n");for(k=0;k<N;k++)printf("%4d",p[k]);printf("\n");}

以下fun函数的功能是:找出具有N个元素的一维数组中的最小值,并作为函数值返回,请填空。(设N己定义)int fun(int x[N]){int i,k=0for(i=0;iN;i++)if(x[i]x[k])k=_____;return x[k];}

下列给定程序中,函数fun()的功能是:按顺序给s所指数组中的元素赋予从2开始的偶数,然后再按顺序对每5个元素求一个平均值,并将这些值依次存放在w所指的数组中。若s所指数组中元素的个数不是5的倍数,多余部分忽略不计。例如,s所指数组有14个元素,则只对前10个元素进行处理,不对最后的4个元素求平均值。请改正函数fun()中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include <stdio.h>define SIZE 20fun (double *s, double *w){ int k, i; double sum;for(k=2, i=0; i<SIZE; i++){s [i]=k; k+=2;}sum=0.0;for(k=0, i=0; i<SIZE;i++){sum+=s[i];/*************found**************/if(i+1%5==0){w[k]=sum/5; Sum=0; k++;}}return k;}main(){ double a[SIZE],b[SIZE/5];int i, k;k=fun(a/b);printf ("The original data:\n");for(i=0;i<SIZE;i++){if(i%5==0)printf("\n");printf("%4.0f"/a[i]);}printf{"\n\nThe result:\n");for(i=0; i<k; i++) printf("%6.2f",b[i]);printf("\n\n");}

以下程序段是函数返回a所指数组中最小的值所在的下标值,请在下划线处填空。fun(int *a,int n){int i,j=0,p;p=j;for(i=j;i<n;i++)if(a[i]<a[p]) 【 】;return(p);}

以下函数模板max()的功能是返回数组a中最大元素的值。请将横线处缺失部分补充完整。template<typename T>T max(T a[],int n){T m=a[0]for(int i=1;i<n;i++)if(a[i]>m)______;return m;}

以下程序调用findmax函数求数组中值最大的元素在数组中的下标,请选择填空:includefind 以下程序调用findmax函数求数组中值最大的元素在数组中的下标,请选择填空: #include<stdio.h> findmax(int*s,int t,int*k) { int p; for(p=0,*k=p;p<t;p++) if(s[p]>s[*k])________; } main() { int a[10],i,k; for(i=0;i<10;i++)scanf("%d",a[i]); findmax(a,10,k); printf("%d,%d\n",k,a[k]); }A.k=pB.*k=p-sC.k=p-sD.*k=p

下列给定程序中,函数fun()的功能是找出100~n(n不大于1000)之间百位数字加十位数字等于个位数字的所有整数,把这些整数放在s所指的数组中,个数作为函数值返回。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include<stdio.h>define N 100int fun(int *s,int n){int i,j,k,a,b,c;j=0;for(i=100;i<n;i++){/*************found***********/k=n;a=k%10;k/=10;b=k%10;c=k/10;if(a==b+c)/************found**************/s[j]=i;}return j;}main(){int a[N],n,num=0,i;do{printf("\nEnter n(<=1000):”);scanf("%d",n);}while(n>1000);num=fun(a,n);printf("\n\nThe result:\n”);for(i=0;i<num;i++)printf("%5d",a[i]);printf("\n\n");}

阅读以下说明,将应填入(n)处的字句写在答卷纸的对应栏内。【说明】下面的程序为堆排序程序,其中函数adjust(i,n)是把以R[i](1≤i≤┕i/2┙)为根的二叉树调整成堆的函数,假定R[i]的左、右子树已经是堆,程序中的,是在主函数中说明的结构数组,它含有要排序的n个记录。【程序】Void adjust(i,n)Int i,n;{iht k,j;element extr;extr=r[i];k=i;j=2*i;while (j<=n ){if ((j<n) (r[j].key<r[j+1].key))(1);if (extr. key<r[j].key){r[k]=r[j];k=j;(2);}else(3);}r[k]=extr;}/*让i从┗i/2┛逐步减到1, 反复调用函数adjust, 便完成建立初始堆的过程。*/void heapsort (r,n)list r;int n;{int i,1;element extr;for (i=n/2;i>=1;- -i)(4); /* 建立初始堆*/for (k--n;k>=2;k- -){extr=r[1];r[1]=r[k];r[k]=extr;(5);}}

以下函数返回a所指数组中最大值所在的下标值fun(int *a,int n){ int i,j=0,p; p=j; for(i=j;in;i++) if(a[i]a[p])_________; return(p);}在下画线处应填入的内容是A.i=p B.a[p]=a[i] C.p=i D.p=j

以下函数模板main()的功能是:返回数组a中最大元素的值。请将横线处缺失部分补充完整。template<typename T>Tmax(Ta[],intn){Tm=a[0];for(int i:1;i(n;i++)if(a[i]>m______;return m;}

请编写一个函数fun(),它的功能是:找出一维数组元素中最大的值和它所在的下标,最大值和它所在的下标通过形参传回。数组元素中的值已在主函数中赋予。主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:include<stdlib.h>include<stdio.h>void fun(int a[],int n, int *max,int *d){}main(){int i, x[20], max, index, n=10;randomize();for(i=0; i<=n; i++){x[i]=rand()%50;printf("%4d",x[i]);/*输出一个随机数组*/}printf("\n");fun(x,n,max,index);printf("Max=%5d,Index=%4d\n",max,index);}

请补充函数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]);}

以下函数实现按每行8个输出W所指数组中的数据:在横线处应填人的语句是( )。A.if(i/8==0)printf(”\n”);B.if(i/8==O)continue;C.if(i%8==0)prinff(’’\n”);D.if(i%8==0)continue;

以下函数返回a所指数组中最小的值所在的下标值: fun(int*a,int n) { int i,j=0,P; p=j; for(i=j;in;i++) if(a[i]a[j])____return(p); } 在下划线处应填入的是( )。A.i=PB.a[p]=a[i]C.p=jD.p=i

以下函数返回a所指数组中最小的值所在的下标值: A.i=pB.a[p]=a[i]C.p=jSXB 以下函数返回a所指数组中最小的值所在的下标值:A.i=pB.a[p]=a[i]C.p=jD.p:i

以下程序调用fun函数求数组中最大值所在元素的下标。在横线处应填入的内容是A.*k=iB.k=iC.*k=i-sD.k=i-s

以下fun函数返回数组中最大值的下标在横线处应填入的内容是A.++kB.i=kC.k++D.k=i

以下函数返回a所指数组中最小的值所在的下标值 fun(int *a,int n) { int i,j=0,p; p=j; for(i=j;i<n;i++) if(a[i]<a[p])______; return(p);} 在下划线处应填入的是A.i=pB.a[p]=a[i]C.p=jD.p=i

以下函数返回a所指数组中最大值所在的下标值: fun(int *a,int n) { int i,j=0,p; p=j; for(i=j;i<n;i++) if(a[i]>a[p])______; return(p); } 在下划线处应填入的内容是( )。A.i=pB.a[p]=a[i]C.p=jD.p=i

试题14以下程序调用fun函数把x中的值插入到a数组下标为k的数组元素中。主函数中,n存放a数组中数据的个数。请填空。#include stdio.hvoid fun(int s[], int *n, int k, int x){ int i;for(i=*n-1; i=k; i- - ) s[ ___ ]=s[i];s[k]=x;*n=*n+______;}main(){ int a[20]={1,2,3,4,5,6,7,8,9,10,11}, i, x=0, k=6, n=11;fun(a, n, k, x);for(i=0; in; i++) printf(“%4d”,a[i]); printf(“\n”);}

(11)己知a所指的数组中有N个元素。函数fun的功能是,将下标k(k0)开始的后续元素全部向前移动一个位置。请填空。void fun(int a[N],int k){ int i;for(i=k;iN;i++) a[ 【11】 ]=a[i];}

单选题以下程序段是函数返回a所指数组中最大的值所在的下标值,横线处的语句为(  )。Ak=iBk=jCi=jDi=n