[试题]

试题二

下面程序中函数fun的功能是:在含有10 个元素的s数组中查找最大数,及最大数所在位置(即,下标值),最大数可能不止一个。最大数作为函数值返回,最大数的个数通过指针变量n传回,所在位置由数组pos传回。

例如:

若输入 2 8 5 7 8 4 5 3 2 8

则应输出:

The max: 8

Total: 3 //最大数出现次数

The positions: 1 4 9

请补充下列空缺:

include<stdio.h>

include<conio.h>

define M 10

int fun(int *a, int *n, int pos[])

{int i, k,max=-32767;(1)

for(i=0; i<M; i++)

if( (2) ) max=a[i];

for(i=0; i<M; 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; i<M; i++)scanf("%d", (4));

j=fun( (5) );

printf("The max: %d/n", j);

printf("Total: %d",n);

printf("The position:");

for(i=0; i<n; i++ ) printf("%4d", pos[i]);

printf("/n");

}

参考答案与解析:

相关试题

试题四 (说明) 下面程序的功能是:在含有10个元素的数组中查找最大数,及最大

[试题]试题四(说明)下面程序的功能是:在含有10个元素的数组中查找最大数,及最大数所在位置(即下标值),最大数可能不止一个。例如:若输入2857848328则应输出The max:8Total:4∥最大数出现次数The positions:1469(函数)#include<stdio.h>#define M 10int fun(int*a,int*n,int pos[]){int i,k max=-32767;(1)for(i=0;i<M;i++)if( (2) )max=a[i];f

  • 查看答案
  • 下列给定程序中,函数fun()的功能是:求出数组中最大数和次最大数,并把最大数和

    [试题]下列给定程序中,函数fun()的功能是:求出数组中最大数和次最大数,并把最大数和b[0]中的数对调、次最大数和b[1]中的数对调。请修改程序中的错误,得出正确的结果。注意:不要改动main()函数,不能增行或删行,也不能更改程序的结构。试题程序:

  • 查看答案
  • 函数fun的功能是在a所指的具有n个元素的数组中查找最大值并返回给调用函数,函数

    [单选题]函数fun的功能是在a所指的具有n个元素的数组中查找最大值并返回给调用函数,函数不完整。在if语句下划线处应填人的选项是( )。A.O>sB.* P>*sC.a[p]>a[s]D.p—a>P—s

  • 查看答案
  • 给定程序中,函数fun的功能是:在形参ss所指字符串数组中,查找含有形参subs

    [试题]给定程序中,函数fun的功能是:在形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串并输出,若没找到则输出相应信息。ss所指字符串数组中共有N个字符串,且串长小于M。程序中库函数strstr(s1,s2)的功能是在s1串中查找s2子串,若没有,函数值为0,若有,为非0。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANKl.C中。不得增行或删行,也不得更改程序的结构!

  • 查看答案
  • 试题14以下程序调用fun函数把x中的值插入到a数组下标为k的数组元素中。主函数

    [试题]试题14以下程序调用fun函数把x中的值插入到a数组下标为k的数组元素中。主函数中,n存放a数组中数据的个数。请填空。#include <stdio.h>void 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,

  • 查看答案
  • 给定程序中,函数fun()的功能是:使数组中的元素的值增加10倍。 改正其中的错

    [主观题]给定程序中,函数fun()的功能是:使数组中的元素的值增加10倍。改正其中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.试题程序:include<stdio.h>include<conio.h>iht m[10];void fun(void){int j;printf("In subfunc after calling/n");for(j=0;j<l0;j++){/************found**********************

  • 查看答案
  • 某人编写了一个能够返回数组a中10个数中最大数的函数过程,代码如下: 程序运行时

    [单选题]某人编写了一个能够返回数组a中10个数中最大数的函数过程,代码如下:程序运行时,发现函数过程的返回值是错的,需要修改,下面的修改方案中正确的是( ) 。A. 语句max=1应改为max=a(1)B. 语句For k=2 To 10应改为For k=1 To 10C. If语句中的条件a(k)>a(max)应改为a(k)>maxD. 语句MaxValue=max应改为MaxValue=a(max)

  • 查看答案
  • ( 31 )某人编写了一个能够返回数组 a 中 10 个数中最大数的函数过程,代

    [单选题]( 31 )某人编写了一个能够返回数组 a 中 10 个数中最大数的函数过程,代码如下:F.unction MaxValue(a() As Integer) As IntegerD.im max%max=1F.or k = 2 To 10If a(k)>a(max) Thenmax = kE.nd IfNext kMaxValue = maxE.nd Function程序运行时,发现函数过程的返回值是错的,需要修改,下面的修改方案中正确的是A. )语句 max = 1 应改为 max =

  • 查看答案
  • 在Excel2010中,___函数可以用来查找一组数中的最大数。

    [主观题]在Excel2010中,___函数可以用来查找一组数中的最大数。

  • 查看答案
  • 某人编写了一个能够返回数组a中10个数中最大数的函数过程,代码如下: Funct

    [单选题]某人编写了一个能够返回数组a中10个数中最大数的函数过程,代码如下: Function MaxValue(aAsInteger)As Integer Dim max%:max=1 For k=2 TO 10 If a(k)>a(max)Then max=k End lf Next k MaxValue=max End Function 程序运行时,发现函数过程的返回值是错的,需要修改,下面的修改方案中正确的是。 A.语句max=1应改为max=a(1) B.语句For k=2 TO 10应

  • 查看答案