5.有以下语句: const int n=20; int a[n]; int *pa[n]; int i; for(i=0; i<n; i++) a[i]=i+1; 使用这些语句,编写完整的程序,通过 pa 数组修改数组 a 元素的值,使其 元素值自增 10,然后通过 pa 数组遍历 a 数组,输出全部元素值,要求每行输出 10 个元素。

5.有以下语句: const int n=20; int a[n]; int *pa[n]; int i; for(i=0; i<n; i++) a[i]=i+1; 使用这些语句,编写完整的程序,通过 pa 数组修改数组 a 元素的值,使其 元素值自增 10,然后通过 pa 数组遍历 a 数组,输出全部元素值,要求每行输出 10 个元素。


参考答案和解析
C

相关考题:

以下程序的功能是:求出数组 x 中各相邻两个元素的和依次存放到 a 数组中,然后输出。请填空。main( ){ int x[10],a[9], i ;for (i=0;i10;i++)scanf("%d",x[i]);for( 【 14 】 ;i10;i++)a[i-1]=x[i]+ 【 15 】 ;for(i=0;i9;i++) printf("%d",a[i]);printf("\n");}

以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){int x[10],a[9],I;for (i=0;i10;i++)scanf(“%d”,x[i]);for( i=__;i10;i++)a[i-1]=x[i]+ x[i-1] ;for(i=0;i9;i++)printf(“%d”,a[i]);printf(“\n”);

以下函数按每行 8 个输出数组中的数据void fun(int *w,int n){ int i;for(i=0;in;i++){ ____________printf("%d ",w[i]);}printf("\n");}下划线出应填入的语句是A)if(i/8==0) printf("\n");B)if(i/8==0) continue;C)if(i%8==0) printf("\n");D)if(i%8==0) continue;

(28)以下函数按每行8个输出数组中的数据void fun( int *w,int n){ int i;for(i=0;in;i++){________printf(“%d”,w);}printf(“\n”);}下划线处应填入的语句是A)if(i/8==0)print(“\n”); B) if(i/8==0)continue;C) if(i%8==0)print(“\n”); D) if(i%8==0)continue;

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

本题中定义了长度为20的-维整型数组a,并将数组元素的下标值赋给数组元素,最后打印输出数组中下标为奇数的元素。 public class javal{ public static void main(String[]args){ int a[]= Int i: for a[i]=i for i++) =1: i=0;i20;i++){ System.out.print(”a[”+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;}

阅读以下说明和C语言函数,将应填入(n)处。[说明]函数int find_Max_Min(int a[],int n)的功能是:找出n个元素的数组a中的最大元素和最小元素并输出,返回查找过程中元素的比较次数。查找方法如下:比较a[0]和a[n-1],若a[0]大,则交换a[0]和a[n-1]的值:再比较a[1]和a[n-2],若a[1]大,则交换a[1]和a[n-2]的值;以此类推,直到所有的元素都比较完。然后在数组的前半区从前往后找出小元素,在后半区从后往前找出大元素。[函数]int find_Max_Min(int a[],int n){/*找出n个元素的数组a的最大、最小元素并输出,返回查找过程元素中的比较次数*/int i,Count=0;int temp,Maxnum,Minnum;for(i=0; i<n/2; i++){Count=Count+1 /*元素比较次数计数*/if(a[i]>a[(1)]){/*数组元素交换代码略*/}}Maxnum=a[n-1]; Minnum=a[0];for(i=1;i<n/2+n%2;i++){Count=(2); /*元素比较次数计数*/Minnum=(3)? a[i]:Minnum; /*找最小元素*/Maxnum=(4)?(5):Maxnum; /*找最大元素*/}printf("Max=%d\n",Maxnum);printf("Min=%d\n",Minnum);return Count;}

请补充函数fun(),该函数的功能是:从键盘输入一个下标n,把数组aa中比元素aa[n]小的元素放在它的左边,比它大的元素放在它的右边,排列成的新数组仍然保存在原数组中。例如,数组aa={33,67,42,58,25,76,85,16,41, 56},输入3。结果输出“33,42,25,16,41,56,58,67,76,85”。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仪在函数fun()的横线上填入所编写的若干表达式或语句。试题程序:include<stdio.h>define N 10void fun(int aa[],int n){int i,j=0,k=0,t;int bb[N];t=aa[n];for(i=0;i<N;i++){if(aa[i]>t)bb[j++]=aa[i];if(aa[i]<t)aa[k++]=aa[i];}【 】;for(i=0;【 】;i++, k++)aa[k]=bb[i];}main(){int i,n;int aa[N]={33,67,42,58,25,76,85,16,41,56};clrscr();printf("\n*** original list ***\n");for(i=0;i<N;i++)printf("%4d"/aa[i]);printf("\n suffix n\n");scanf("%d",n);fun(aa,n);printf("\n*** new list ***\n");for (i=0;i<N; i++)printf("%4d", aa[i]);}

以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。 #define N 10 void arrin(int x[N]) { int i=0; while(i<N) scanf("%d",_________); } 在下划线处应填入的是A.x+iB.x[i+1]C.x+(i++)D.x[++i]

请编写函数fun(),该函数的功能是:移动一维数组中的内容,若数组中有n个整数,要求把下标从p~n-1(p<n-1)的数组元素平移到数组的前面。例如,一维数组中的原始内容为1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, P的值为6。移动后,一维数组的内容应为7, 8, 9, 10, 11, 12, 13, 14, 15, 1, 2, 3, 4, 5, 6。[注意] 部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。[试题源程序]inciude <stdio.h>define N 80void fun(int *w, int p, int n){}main(){int a[N]=(i, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);int i, P, n=15;printf("The original data:\n");for(i=0; i<n; i++)printf("%3d", a[i]);printf("\n\nEnter p: ");scanf("%d", &p);fun(a, P, n);printf("\nThe data after moving:\n");for(i=0; i<n; i++)printf("%3d", a[i]);printf("\n\n");}

下面函数的功能是:找出一维数组元素中最大的值和它所在的下标,最大值的和它所在的下标通过形参传回。数组元素中的值已在主函数中赋予。主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。请填空。#includestdlib.h#includestdio.hvoid fun(int a[],int n, int *max, int *d){ int i;*max=a[0];*d=0;for(i=0;【15】;i++)if(*max【16】){*max=a[i];*d=i;}}main(){ int i, x[20], max, index, n=10;randomize();for(i=0;in;i++){x[i]=rand()%50; printf("%4d",x[i]);}printf("\n");fun(x,n,max,index);printf("Max=%5d,Index=%4d\n",max,index);}

下列程序定义了NXN的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N]),该函数的功能是使数组右上半三角元素中的值全部置成0。例如a数组中的值为a=4 5 61 7 93 2 6,则返回主程序后a数组中的值应为0 0 01 0 03 2 0注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:include<conio.h>include<stdio.h>include<stdlib.h>define N 5int fun(int a[ ][N]){}main(){int a[N][N],i,j;clrscr( );printf("*****The array*****\n");for(i=0;i<N;i++)/*产生—个随机的5*5矩阵*/{for(j=0;j<N;j++){a[i][j]=rand( )%10;printf (“%4d”,a[i][j]);}printf(“\n”);}fun(a);printf(“THE RESULT\n”);for(i=0;i<N;i++){ for(j=0;i<N;j++)printf(“%4d”,a[i][j]);printf(“\n”);}}

请补充函数fun(),该函数的功能是;交换数组aa中最大和最小两个元素的位置,结果依然保存在原数组中,其它元素位置不变。注意数组aa中没有相同元素。例如,输入“33,67,42,58,25,76,85,16,41, 56”,则输出“33,67,42,58,25,76,16,85,41,56”。注意;部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。试题程序:include <stdio. h>define N 10void fun(int aa[]){int i, j, t;int max=0, min=0;for(i=0; i<N; i++){if(【 】)max=i;if(【 】)min=i;}t=aa [max];【 】;aa [min] =t;}main(){int i;int aa [N] ={33, 67, 42,58,25, 76, 85,16, 41, 56};clrscr ();printf("\n*** original list ***\n");for(i=0; i<N; i++)printf ("%4d", aa [i] );fun (aa);printf ("\n*** new list ***\n");for(i=0; i<N; i++)printf ("%4d", aa [i]);}

本程序用冒泡法对数组a[]的元素从大到小排序,请在程序空白处填空。 void bubble(int a[],int n) {int i,j,max,temp; max=n-1; do{j=0; for(i=0;i<max;i++) if(a[i]<a[i+1]) {temp=a[i];a[i]=a[i+1];a[i+1]=temp; j=i; } max=j; }while(( )); }

以下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];}

程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[][N],int n),该函数的功能是使数组左下半三角元素中的值加上n。例如:若n的值为3,a数组中的值为a=2 5 41 6 95 3 7则返回主程序后a数组中的值应为5 5 44 9 98 6 10注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数full的花括号中填入所编写的若干语句。试题程序:include <stdio.h>include <conio.h>include <stdlib.h>define N 5fun(int a[][N],int n){}main(){int a[N][N],n,i,j;clrscr();printf("***** The array *****\n");for(i=0;i<N;i++)/*产生—个随机5*5矩阵*/{for(j=0;j<N;j++){a[i][j]=rand()%10;printf("%4d",a[i][j]);}printf("\n");}don=rand()%10;/*产生一个小于5的随机数n*/while(n>=5);printf("n=%4d\n",n);fun(a,n);printf("*****THE RESULT*****\n");for(i=0;i<N;i++){for(j=0;j<N;i++)printf("%4d",a[i][j]);printf("\n");}}

请编写一个函数void fun(int p[],int n,int c),其中数组p的元素按由小到大的顺序排列,其元素个数为n。函数fun()的功能是将c插入到数组p中,且保持数组的升序排列。注意:部分源程序已存在文件PROC9.cpp中。请勿修改主函数和其他函数中的任何内容,仅在函数fun()的花括号中填写若干语句;文件PROC9.cpp的内容如下://PROC9.cppinclude <iostream>include <string>using namespace std;define M 30void fun(int p[ ],int n,int c);int main (){int pp[M],n,i;int fg, c;cout<<"Please input n:\n";cin>>n;cout<<"Please input the n data:\n";for (i=0; i<n; i++)cin>>pp [i];cout<<"Please input c:\n";cin>>c;fun (pp, n, c);for (i=0; i<n; i++)cout<<pp [i] << " " ;cout<<end1;return 0;}void fun(int p[ ],int n, int c){//* * * * * * * * *}

下列程序定义了N×N的二维数组,并在主函数中自动赋值;请编写函数fun(int a[][N]),该函数的功能是:使数组左下半三角元素中的值全部置成0。例如a数组中的值为a=1 9 72 3 84 5 6则返回主程序后a数组中的值应为0 9 70 0 80 0 0注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:include <conio.h>include <stdio.h>include <stdlib.h>define N 5int fun (int a[] [N]){}main(){int a[N] [N],i,j;clrscr();printf("*****The array*****\n");for(i=0;i<N;i++)/*产生—个随机的5*5矩阵*/{ for(j=0;j<N;j++){a[i][j]=rand()%10;printf("%4d", a[i][j]);}printf("\n");}fun (a);printf("THE RESULT\n");for(i=0;i<N;i++){ for(j=0;j<N;j++)printf("%4d",a[i][j));printf("\n");}}

下列程序用来判断数组中特定元素的位置所在,则输出结果为()。includeinclude 下列程序用来判断数组中特定元素的位置所在,则输出结果为( )。 #include<conio.h> #include<iostream.h> int fun(int*p,int n,int*j) {int i; *j=0; for(i=0;i<n;i++) if(p[*j]<p[i])*j=i; return p[*j];} void main() {int a[10]={1,3,9,0,8,7,6,5,4,2)j;int j; fun(a,10,j); cout<<j<<','<<a[j];}A.2,9B.3C.9D.3,9

下面函数的功能是找出一维数组元素中最大的值和它所在的下标,最大值的和它所在的下标通过形参传回。#include stdlib.h#include stdio.hvoid fun(int a[ ],int n,int *max,int *d){ int i; *max=a[0]; *d=0; for(i=0;;i++) if(*max) { *max=a[i];*d=i; }}

本题定义了一个长度为l0的boolean型数组,并给数组元素赋值,要求如果数组元素下标为奇数,则数组元素值 为false,否则为true。 public class javal{ pubhc static void main(String[]args){ boolean b[]= ; for(int i=0;i10;i++){ if( ) b[i]=false; else ; } for(int i=0;i10;i++) System.Out.print("bE"+i+"]="+b[i]+","); } }

请编写一个函数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);}

请编写一个函数void fun(int a [],int n),其中a为数组,n为数组a的长度。函数fun()的功能是冒泡排序法将数组a元素按从小到大的顺序排列,实现数组a的升序排列。注意:部分源程序已存在文件PROC12.cpp中。请勿修改主函数和其他函数中的任何内容,仅在函数fun()的花括号中填写若干语句。文件PROC12.cpp的内容如下://PROC12. cppinclude <iostream>using namespace std;define MAX 100void 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){// * * * * * * * *}

写出模板函数实现数值型数组元素值按从小到大排序的程序。includeiostreamusing namespace std;template class Tvoid sort(T b[],int n){T temp;int i,j;T *a=new T[n];for (i=0;in;i++){a[i]=b[i];}for(i=0;in-1;i++){for(j=i+1;jn;j++){ if(a[i]a[j]){temp=a[i];a[i]=a[j];a[j]=temp;}}}for(i=0;in;i++){couta[i] ;}coutendl;delete []a;}void main(){int i,n=6;int a[]={5,1,9,10,3,8};____________;for(i=0;in;i++){couta[i] ;}coutendl;}

试题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];}

单选题以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。#include #define N 10void fun(int x[N]){ int i=0; while(iAx+iBx[i+1]Cx+(i++)Dx[++i]