题目详情
当前位置:首页 > 职业培训考试
题目详情:
发布时间:2024-07-30 20:01:41

[填空题]下列给定的程序中,函数fun( )的功能是:用选择法对数组中的n个元素按从小到大的顺序进行排序。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#define N 20
void fun(int a[],int n)
int i,j,t,p;
for (j=0;j<n-1;j++)
/*************found**************/
p=j
for(i=j;i<n;i++)
if(a[i]<a[p])
/*************found**************/
p=j;
t=a[p]; a[p]=a[j]; a[j]=t;


main( )
int a[N]=9.6,8,3,-1,i,m=5;
printf("排序前的数据: ");
for(i=0;i<m;i++) printf("%d",a[i]);
printf("/n");
fun(a,m);
printf("排序后的顺序: ");
for(i=0;i<m;i++) printf("%d",a[i]);
printf("/n");

更多"下列给定的程序中,函数fun( )的功能是:用选择法对数组中的n个元素"的相关试题:

[填空题]下列给定的程序中,函数fun( )的功能是:用选择法对数组中的n个元素按从小到大的顺序进行排序。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include<stdio.h> #define N 20 void fun(int a[],int n) {int i,j,t,p; for (j=0;j<n-1;j++) /*************found**************/ {p=j for(i=j;i<n;i++) if(a[i]<a[p]) /*************found**************/ p=j; t=a[p]; a[p]=a[j]; a[j]=t; } } main( ) {int a[N]={9.6,8,3,-1},i,m=5; printf("排序前的数据: "); for(i=0;i<m;i++) printf("%d",a[i]); printf("/n"); fun(a,m); printf("排序后的顺序: "); for(i=0;i<m;i++) printf("%d",a[i]); printf("/n"); }
[填空题]下列给定的程序中,函数proc( )的功能是:用选择法对数组中的m个元素按从小到大的顺序进行排序。
例如,排序前的数据为:11 32 -5 2 14
则排序后的数据为:-5 2 11 14 32
请修改程序中的错误,使它能得到正确结果。
注意:不要改动main( )函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#define M 20
void proe(int a[], int n)

int i, j, t, p;
//************found*************
for(j=0; j<n=1; j++);

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


void main( )

int arr[M]=11, 32, -5, 2, 14, i, m=5;
printf("排序前的数据: ");
for(i=0; i<m; i++)
printf("%d", arr[i]);
printf("/n");
proc(art, m);
printf("排序后的顺序: ");
for(i=0; i<m; i++)
printf("%d", arr[i]);
printf("/n");

[填空题]在给定程序中,函数fun( )的功能是将形参指针所指结构体数组中的3个元素按num成员进行升序排列。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
#include<stdio.h>
#define N 8
typedef struct
int num;
int year,month,day;
STU;
int fun(STU *std,STU *k,int year)
inti,n=0;
for(i=0;i<N;i++)
/**********found**********/
If( (1) ==year)
/**********found**********/
k[n++]= (2) ;
/**********found**********/
return( (3) );

main( )
STU std[N=1,1984,2,15,2,1983,9,21,3,1984,9,1,4,1983,7,15,5,1985,9,28,6,1982,11,15,7,1982,6,22),
8,1984,8,19;
STU k[N];int i,n,year;
printf("Enter a year:");scanf("%d",&year);
n=fun(std,k,year);
if(n==0)
printf("/nNo person was born in%d/n",year);
else
printf("/nThese persons were born in%d/n",year);
for(i=0;i<n;i++)
printf("%d %d-%d-%d/a",
k[i].Num,k[i].year,k[i].month,
k[i].day);


[简答题]改错题 下列给定的程序中,函数fun( )的功能是:用选择法对数组中的n个元素按从大到小的顺序进行排序。 请改正程序中的错误,使它能得到正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include #define N 20 void fun(int a[],int n) { int i,j,t,p; /**********************found***********************/ for(j=0;ja[p]) p=i; t=a[p]; a[p]=a[j]; /**********************found***********************/ a[p]=t; } } main( ) { int a[N]={11,32,-5,2,14},i,m=5; printf("排序前的数据:"); for(i=0;i
[填空题]下列给定的程序中,函数fun( )的功能是:用选择法对数组中的n个元素按从大到小的顺序进行排序。请改正程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#define N 20
void fun(int a[ ],int n)

int i,j,t,p;
/*************found*************/
for(j=0;j<n-1;j++) ;

p=j;
for(i=j;i<n;i++)
if(a[i)>a[p])
p=i;
t=a[p];
a[p]=a[i];
/*************found**************/
a[p]=t;


main( )

int a[N]=11,32,-5,2,14,i,m=5;
printf(“排序前的数据:”);
for(i=0;i<m;i++)
printf("%d",a[i]);
printf("/n");
fun(a,m);
printf(“排序后的顺序:”);
for(i=0;i<m;i++)
printf("%d",a[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( )的功能是计算并输出high以内的素数之和。high由主函数传给fun( )函数。若high的值为 100,则函数的值为1060。 请改正程序中的错误,使它能得到正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include <conio.h> #include <stdio.h> #include <math.h> int fun(int high) { int sum=0,n=0,j,yes; while(high>=2) { yes=1; for(j=2;j<=high/2;j++) /*************found**************/ ifhigh%j==0 { yes=0; break; } /*************found**************/ if(yes==0) { sum+=high; n++; } high--; } return sum; } main( ) { clrscr( ); printf("%d/n",fun(100)); }
[填空题]下列给定程序中,函数fun( )的功能是:找出一个大于给定整数m且紧随m的素数,并作为函数值返回。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.
试题程序:
#include <conio.h>
#include <stdio.h>
int fun( int m)
int i,k;
for (i=m+1; ;i++)
for (k=2;k<i;k++)
/*************found**************/
if (i%k!=0)
break;
/*************found**************/
if (k<i)
return(i);


main( )
int n;
clrscr ( );
printf("/nPlease enter n: ");
scanf ("%d", &n);
printf ("%d/n",fun(n));

[填空题]给定程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为1,失败时返回值为0。在复制的过程中,把复制的内容输出到终端屏幕。主函数中源文件名放在数组sfname中,目标文件名放在数组tfname中。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构。
文件BLANK1.C内容如下:
#include<stdio.h>
#include<stdlib.h>
int fun(char *source,char *target)
FILE *fs,*ft;
char ch;
/**********found**********/
if((fs=fopen(source, (1) ))==NULL)return 0;
if((ft=fopen(target,"w"))==NULL)return 0;
printf("/nThe data in file: /n");
eh=fgetc(fs);
/**********found**********/
while(!feof( (2) ))

putehar(ch);
/**********found**********/
fpute(ch, (3) );
ch=fgetc(fs);

fclose(fs);
fclose(ft);
printf("/n/n");
return 1;

void main( )
char sfname[20]="myfile1",tfname[20]="myfile2";
FILE *myf;
int i;
char c;
myf=fopen(sfname,"w");
printf("/nThe original data: /n");
for(i=1;i<30;i
[简答题]下列给定程序中,函数fun的功能是:求两个非零正整数的最大公约数,并作为函数值返回。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
int fun(int a, int b)
int r, t;
if(a<b)
t=a; b=a; a=t;
/******************found*******************/

r=a%b;
while(r!=0)
a=b; b=r; r=a%b;
/******************found*******************/
return(a);

void main( )
int num1, num2, a;
printf("Input num1 num2:");
scanf("%d%d", &num1, &num2);
printf("num1=%d num2=%d/n/n", num1, num2);
a=fun(num1, num2);
printf("The maximun common divisor is%d/n/n",a);

[填空题]下列给定程序中函数fun的功能是:求两个非零正整数的最大公约数,并作为函数值返回。
例如,若num1和num2分别为49和21,则输出的最大公约数为7;若num1和num2分别为27和81,则输出的最大公约数为27。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
int fun(int a,int b)

int r,t:
if(a<b)
/*********found*********/
t=a;b=a;a=t;
r=a%b;
while(r!=0)
a=b;b=r;r=a%b;
/*********found*********/
return(a);

void main( )

int num1,hum2,a;
printf("Input num1 num2:");
scanf("%d%d",&num1,&num2);
printf("num1=%d num2=%d/n/n",num1,num2);
a=fun(num1,num2):
printf("The maximun common divisor is%d/n/n",a);

[简答题]下列给定程序中,函数fun的功能是:计算正整数num各位上的数字之积。
注意:不要改动maln函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include <stdio.h >
#include <conio.h>
long fun (long num)

/********** found********** /
long k;
do

k*=num% 10;
/********** found********** /
num/=10;
while (num);
return (k);

main ( )

long n;
printf ("/ n please enter a num-
ber: ");
scanf("% 1d", &n);
printf("/n% 1d/n", fun(n));

我来回答:

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

订单号:

截图扫码使用小程序[完全免费查看答案]
请不要关闭本页面,支付完成后请点击【支付完成】按钮
恭喜您,购买搜题卡成功
重要提示:请拍照或截图保存账号密码!
我要搜题网官网:https://www.woyaosouti.com
我已记住账号密码