计算机二级c操作题题库,计算机二级c语言上机操作题

计算机二级c操作题题库,计算机二级c语言上机操作题

1 .在给定的程序中,函数fun的功能是从任意给定的9个正整数中找出升序排列时位于中间的数,在原始数据序列中将小于中间数的数用中间数替换,位置不变,向主函数输出处理后的数据序列

例如,有9个正整数: 1 5 7 23 87 5 8 21 45

按升序排列时的中间数为8

处理后的主函数输出的数列为88238782145

#include stdio.h

#define N 9

intfun(intx[] ) )。

{ int i,j,k,t,mid,b[N];

for(I=0; iN; I ) b(I )=x ) I );

for(I=0; i=N/2; I )

{ k=i;

for(j=I1; jN; j ) if ) b[k]b[j] ) k=j;

if(k!=i )

{

/*******found***********/

t=b[i]; b[i]=___1___; b[k]=t;

() ) ) ) )。

() ) ) ) )。

/*******found***********/

mid=b[___2___];

for(I=0; iN; I )

/*******found***********/

if(x[I]__3__mid ) x[i]=mid;

返回mid;

() ) ) ) )。

main ( ) )

{ int i,x [ n ]={ 1,5,7,23,87,5,8,21,45 };

for(I=0; iN; I ) printf(\’%d \’,x[i];

printf((nthemiddatais:%d(n ),fun ) x );

for(I=0; iN; I ) printf(\’%d \’,x[i];

打印( ( n );

() ) ) ) )。

知识点:数组排序

分析:排序数组

原理:选择法排序

先取数组中的第一个数,将最小的数放在下标为I的位置。 也就是说,第一次放在下标为0的位置,第二次放在下标为1的位置等。 实现升序排列。

提示:用下标引用数组中的数据

填补1 :使用中间变量t,实现两个变量的交换,所以填补: b[k]

填充( mid用于存储数组的中间数据,填写的N/2

空栏补充3 :小于号码