题目详情
当前位置:首页 > 职业培训考试
题目详情:
发布时间:2023-10-11 22:40:23

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

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");

更多"由N个有序整数组成的数列已放在一维数组中,下列给定程序中,函数fun的"的相关试题:

[填空题]由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);

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");

[填空题]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-l,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); } main ( ) { int i,a[N]={-3,4,7,9,13,24,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函数的功能是:将M行N列的矩阵中的数据,按行的顺序依次放在一维数组中,一维数组中的元素的个数存放在形参n所指的存储单元中。 请在程序的下划线处填写正确的内容,使程序得到正确的结果。 void fun(int(*S)[10],int*b,int*n,int mm,int nn) { int i,j; for(i=0;i<mm;s++,i++) for(j=0;j< (1) ;j++) (2) (3) } main( ) { int w[10][10]={{11,12,13,14},{21,22,23,24},{31,32,33,34}},i,j; int a[100]={0},n=0: printf("The matrix:/n"); for(i=0;i<3;i++) { for(j=0;j<4;j++) printf("%3d",w[i][j]); printf("/n"); } fun(w,a,&n,3,4); printf("The A array;/n"); for(i=0;i<n;i++) printf("%3d”,a[i];printf("/n/n"); NONO( );严本函数与考生答题无关,考生不得改动,否则后果自负。*/ }
[简答题]设将n(n,1)个整数存放到一维数组R中,试设计一个在时间和空间两方面尽可能有效的算法,将R中保有的序列循环左移P(0<P<n)个位置,即将R中的数据由(X1,X2,…,Xn)变换为(Xp,Xp+1,…,Xn,X1,…,Xp-1)
[要求]
给出算法的基本设计思想。
[填空题]下列给定程序中,函数fun( )的功能是:给一维数组a输入任意4个整数,并按如下的规律输出。例如输入1,2,3,4,程序运行后输出以下方阵:
4 1 2 3
3 4 1 2
2 3 4 1
1 2 3 4
请改正程序中的错误,使它能得出正确的结果。
注意;不要改动main 函数,不得增行或删行,也不得更改程序的结构。
试题程序;
#include <stdio.h>
#define M 4
/*******************************/
void fun(int a)
int i,j,k,m;
printf("Enter 4 number: ");
for (i=0; i<M; i++) scanf ("%d", &a [i] );
printf ("/n/n The result : /n/n ");
for (i=M; i>0; i--)
k=a [M-1];
for (j=M-1; j>0; j--)
/**********************************/
a[j]=a[j+1];
a[0]=k;
for (m=0 ;m<M; m++ ) printf ("%d ", a [m]);
printf ("/n ");


main ( )
int a [M];
fun(a); printf("/n/n ");

[多项选择]编程题 请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数个位和十位上,b数的十位和个位数依次放在c数的百位和千位上。 例如,当a=16,b=35,调用该函数后,c=5361。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include void fun(int a ,int b,long *c) { } main( ) { int a,b; long c; clrscr( ); printf("Input a,b;"); scanf("%d%d",&a, &b); fun(a,b,&c); printf("The result is:%ld/n",c); }
[简答题]简单应用题请编写函数fun,其功能是将两个两位数的正整数a,b合并形成一个整数放在c中。合并的方式是将a数的个位和十位数依次在c数千位和十位上,b数的十位和个位数依次放在c数的个位和百位。注意:部分源程序以存在文件test3_2.cpp中。请勿修改主函数main和其他函数中的任何内容,仅在函数fun的花括号中填写若干语句。文件test3_2.cpp的内容如下:#includevoid fun(int a ,int b,long *c){}void main( ){int a,b; long c; cout<<"Input a,b;"<>a>>b; fun(a,b,&c); cout<<"The result is:/n"<
[简答题]

编程题
请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数个位和十位上,b数的十位和个位数依次放在c数的百位和千位上。
例如,当a=16,b=35,调用该函数后,c=5361。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include
void fun(int a ,int b,long *c)
{


}
main( )
{
  int a,b;
  long  c;
  clrscr( );
  printf("Input a,b;");
  scanf("%d%d",&a, &b);
  fun(a,b,&c);
  printf("The result is:%ld/n",c);
}


[填空题]请编写函数fun,该函数的功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并方式是:将a数的十位和个位数依次放在c数的干位和十位上,b数的十位和个位数依次放在c数的个位和百位上。例如:当a=32,b=78。调用该函数后,c=3827。 #include <conio.h> #include <Stdio.h> void fun(int a,int b, (1) ) { (2) ; } main( ) { int a,b;long c; clrscr( ); printf("Input a,b:"); scanf("%d%d",&a,&b); fun(a,b,&c); printf("The result is:%ld/n",c); NONO( );/*本函数与考生答题无关,考生不得改动,否则后果自负。*/ }
[简答题]请编写函数fun( ),该函数的功能是:将两个两位数的正整数a,b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的百位和个位上。 例如,当a=45时,b=12,调用到该函数后,c=5142。 注意:部分源程序给出如下. 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include <stdio.h> #include<conio.h> void fun(int a ,int b, long *c) { } main ( ) { int a,b; long c; clrscr( ); printf("Input a ,b:"); scanf(,%d%d",&a,&b); fun(a,b,&c); printf("The result is :%ld/n",c); }

我来回答:

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

订单号:

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