题目详情
当前位置:首页 > 职业培训考试
题目详情:
发布时间:2024-07-26 07:53:03

[简答题]下列给定程序中,函数fun( )的功能是求出数组中最小数和次最小数,并把最小数和a[0]中的数对调,次最小数和a[1]中的数对调。
请改正程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
[试题源程序]
#include<stdio.h>
#include<conio.h>
#define N 20
void fun(int * a,intn)

int i,m,t,k;
/**********************found***********************/
for(i=0;i<n;i++)

m=i;
for(k=i;k<n;k++)
if(a[k]<a[m])
/**********************found***********************/
k=m;
t=a[i];
a[i]=a[m];
a[m]=t;


更多"下列给定程序中,函数fun( )的功能是求出数组中最小数和次最小数,并"的相关试题:

[填空题]下列给定程序中,函数fun( )的功能是求出数组中最小数和次最小数,并把最小数和a[0]中的数对调,次最小数和a[1]中的数对调。
请改正程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include <conio.h>
#include <stdio.h>
#define N 20
void fun(int *a,int n)

int i, m,t,k;
/*************found**************/
for(i=O; i<n; i++)

m==i;
for(k=i; k<n; k++)
if(a[k]<a[m])
/*************found**************/
k=m;
t=a[i];
a[i]=a[m];
a[m]=t;

main( )

int x,b[N]=11,5,12,0,3,6,9,7,10,8,
n=10,i;
clrscr( );
for(i=0; i<n; i++)
printf("%d",b[i]);
printf("/n");
fun(b,n);
for(i=0; i<n; i++)
printf("%d",b[i]);
printf("/n");

[填空题]由N个有序整数组成的数列已放在一维数组中,下列给定程序函数fun的功能是:利用折半查找法查找整数m在数组中的位置。若找到,返回其下标值;否则,返回-1。
折半查找的基本算法是:每次查找前先确定数组中待查的范围low和high(low<high),然后用m与中间位置(mid)上元素的值进行比较。如果m的值大于中间位置元素的值,则下一次的查找范围落在中间位置之后的元素中;反之,下一次的查找范围落在中间位置之前的元素中,直到low>high,查找结束。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#define N 10
/**********found**********/
void fun(int a[],int m)
int low=0,high=N-1,mid;
while(low<=high)
mid=(low+high)/2;
if(m<a[mid])
high=mid-1;
/********found**********/
else if(m>a[mid])
low=mid+1;
else return(mid);

return(-1);

void main( )
int i,a[N]=(-3,4,7,9,13,45,67,89,100,180),
k,m;
printf("a数组中的数据如下:");
for(i=0;i<N;i++)
printf("%d",a[i]);
printf("Enter m:");
scanf("%d",&m);
k=fun(a,m);
if(k>=0)
printf("m=%d,index=%d/n",m,k);
else printf("Not be found /n");

[填空题]给定程序中,函数fun的功能是:求出形参ss所指字符串数组中最长字符串的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长。字符串数组中共有M个字符串,且串长小于N。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include <stdio.h>
#include <string.h>
#defineM 5
#defineN 20
void fun (char (*ss)[N])
inti, j, k=0, n, m, len;
for(i=0; i<M; i++)
len=strlen(ss[i]);
if(i==0)n=len;
if (len>n)
/******************found*******************/
n=len; (1) =i;


for(i=0; i<M; i++)
if(if=k)
m=n;
len=strlen(ss[i]);
/******************found*******************/
for (j= (2) ; j>=0; j--)
ss[i][m--]=ss[i][j];
for (j=0; j<n-len; j++)
/******************found*******************/
(3) =’*’;


main( )
char ss[M][N]="shanghai", "guangzhou",
"beijing", "tianjin", "chongqing");
int i;
printf("/nThe original strings are:/n");
for(i=0; i<M; i++)
[填空题]在给定程序中,函数fun的功能是:求出形参SS所指字符串数组中最长字符串的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长。字符串数组中共有M个字符串,且串长<N。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构。
文件BLANK1.C内容如下:
#include<stdio.h>
#include<string.h>
#define M 5
#define N 20
void fun(char( *ss)[N])
int i,j,k=0,n,m,len;
for(i=0;i<M;i++)
len=strlen(ss[i]);
if(i==0)n=len:
if(len>n)
/**********found**********/
n=len;
(1) =i;


for(i=0;i<M;i++)
if(i!=k)
m=n:
len=strlen(ss[i]);
/***********found***********/
for(j= (2) ;j>=0;j--)ss[i][m--]=ss[i][j];
for(j=0;j<n-len;j++)
/**********found**********/
(3) =’*’:

void main( )
char ss[M][N]="shanghai","guangzhou","beijing","tianjing","cchongqing";
int i;
printf("/nThe original strings are: /n");
for(i=0;i<M;i++)printf("%s/n",ss[i]);
printf("/n");
fun(ss);
printf("/nThe resuh
[简答题]下列程序定义了NXN的二维数组,并在主函数中赋值。请编写函数fun( ),函数的功能是求出数组周边元素的平方和并作为函数值返回给主函数中的s。例如:若a数组中的值为
a=0 1 2 7 9
1 11 21 5 5
2 21 6 11 1
9 7 9 10 2
5 4 1 4 1
则返回主程序后s的值应为310。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <stdio.h>
#include<conio.h>
#include<stdlib.h>
#define N 5
int fun (int w[][N])

main( )

int a[N][N]=0,1,2,7,9,1,11,21,5,5,2, 21,6,11,1,9,7,9,10,2,5,4,1,4,1;
int i,j;
int s;
clrscr( );
printf("*****The array***+*/n");
for (i=0;i<N;i++)
for(j=0;j<N;i++)
printf("%4d",a[i][j]);
printf("/n");

s=fun(a);
printf("*****THE RESULT*****/n");
printf("The sum is:%d/n",s);

[简答题]下列程序定义了M×M的二维数组,并在主函数中赋值。请编写函数proc( ),函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例如,若a数组中的值为:
a=0 1 2 3 4
5 9 7 4 5
4 3 8 3 6
3 5 6 8 7
2 1 0 9 8
则返回主程序后,S的值为3.750000。
注意:部分源程序已给出。
请勿改动主函数main和其他函数中的任何内容。
试题程序:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#define M 5
double proc(int w[][M])


void main( )

int a[M][M]=0, 1, 2, 3, 4, 5, 9, 7, 4, 5, 4, 3, 8, 3, 6, 3, 5, 6, 8, 7, 2, 1, 0, 9, 8;
int i, j;
double s;
system("CLS");
printf("*****The array*****/n");
for(i=0; i<M; i++)
for(j=0; j<M; j++)
printf("%4d", a[i][j]);
printf("/n");

s=proc(a);
printf("*****THE RESULT*****/n");
printf("The sum is: %lf/n", s);

[填空题]在主函数中,从键盘输入若干个数放入数组x中,用0结束输入但不计入数组。下列给定程序中,函数fun( )的功能是:输出数组元素中小于平均值的元素。请补充函数fun( )。
例如:数组中元素的值依次为1,2,2,12,5,15,则程序的运行结果为1,2,2,5。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun( )的横线上填入所编写的若干表达式或语句。
试题程序:
#include<conio.h>
#include<stdio.h>
void fun( 【1】 ,int n)

double sum=0.0;
double average=0.0;
int i=0;
for(i=0;i<n;i++)
 【2】
average= 【3】
for(i=0;i<n;i++)
if(x[i]<average)

if(i%5==0)
printf("/n");
printf("%d/",x[i]);

main( )

int x[1000];
int i=0;
clrscr( );
printf("/nPlease enter some data(end with 0):");
do

scanf("%d",&x[i]);

while(x[i++]!=0);
fun(x,i-1);

[填空题]给定程序中,函数fun的功能是:将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在main函数中输出。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:部分原程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在行线上填入所编写的若干表达式或语句。
[试题源程序]
#include<stdio.h>
typedef struct

char name[10];
int age;
STD;
STD fun(STD std[],int n)

STD max;int i;
/**********found**********/
max= (1)
for(i=1;i<n;i++)
/**********found**********/
if(max.aged (2) )
max=mtd[i];
return max;

main( )

STD std[5]="aaa",17,"bbb",16,"ccc",18,"ddd",17,"ee",15;
STD max;
max=fun(std,5);
printf("/nThe result:/n");
/**********found**********/
printf("/nName:%s,Age:%d/n", (3) ,max.age);


我来回答:

购买搜题卡查看答案
[会员特权] 开通VIP, 查看 全部题目答案
[会员特权] 享免全部广告特权
推荐91天
¥36.8
¥80元
31天
¥20.8
¥40元
365天
¥88.8
¥188元
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《购买须知》
立即支付 系统将自动为您注册账号
请使用微信扫码支付

订单号:

请不要关闭本页面,支付完成后请点击【支付完成】按钮
恭喜您,购买搜题卡成功
重要提示:请拍照或截图保存账号密码!
我要搜题网官网:https://www.woyaosouti.com
我已记住账号密码