2012年3月计算机2级答案

2019-05-17 14:54

二级C语言上机考试复习资料,共有50套题目 一、程序填空题

1、给定程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返回。

例如,有9个正整数:1 5 7 23 87 5 8 21 45 按升序排列时的中间数为:8

处理后主函数中输出的数列为:8 8 8 23 87 8 8 21 45

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include #define N 9 int fun(int x[])

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

for(i=0;i

for(j=i+1;jb[j]) k=j; if(k != i ) {

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

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

/**********found**********/ mid=b[___2___]; for(i=0; i

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

if(x[i] ___3___ mid) x[i]=mid; return mid; }

main()

{ int i, x[N]={1,5,7,23,87,5,8,21,45}; for(i=0; i

2、给定程序中,函数fun的功能是建立一个N×N的矩阵。 矩阵元素的构成规律是:最外层元素的值全部为1;从外向内第2层元素的值全部为2;第3层元素的值全部为3,?依次类推。例如,若N=5,生成的矩阵为: 1 1 1 1 1

1 2 2 2 1 1 2 3 2 1 1 2 2 2 1 1 1 1 1 1

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include #define N 7

/**********found**********/ void fun(int (*a) __1__) { int i,j,k,m;

if(N%2==0) m=N/2 ; else m=N/2+1; for(i=0; i

/**********found**********/ for(j= __2__ ; j

a[k][i]=a[k][N-i-1]= __3__; } }

main()

{ int x[N][N]={0},i,j; fun(x);

printf(\ for(i=0; i

{ for(j=0; j

3、给定程序中,函数fun的功能是: 将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的先后次序。例如,形参s所指的字符串为:def35adh3kjsdf7。执行结果为:defadhkjsdf3537。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include void fun(char *s)

{ int i, j=0, k=0; char t1[80], t2[80]; for(i=0; s[i]!='\\0'; i++) if(s[i]>='0' && s[i]<='9')

{

/**********found**********/ t2[j]=s[i]; ___1___; }

else t1[k++]=s[i]; t2[j]=0; t1[k]=0;

/**********found**********/ for(i=0; i

for(i=0; i<___3___; i++) s[k+i]=t2[i]; }

main()

{ char s[80]=\

printf(\ fun(s);

printf(\}

4、给定程序中,函数fun的功能是:有N×N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素置为0。例如,若N=3,有下列矩阵: 1 2 3 4 5 6

7 8 9计算结果为 1 0 0 6 5 0 10 14 9

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构!

#include #define N 4

/**********found**********/ void fun(int (*t)___1___ ) { int i, j;

for(i=1; i

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

___2___ =t[i][j]+t[j][i]; /**********found**********/ ___3___ =0; } }

}

main()

{ int t[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10}, i, j; printf(\ for(i=0; i

{ for(j=0; j

fun(t);

printf(\ for(i=0; i

{ for(j=0; j

5、给定程序中,函数fun的功能是:对形参s所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参p所指字符数组中,形成一个新串。

例如,形参s所指的字符串为:baawrskjghzlicda,执行后p所指字符数组中的字符串应为:aachjlsw。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include

void fun(char *s, char *p) { int i, j, n, x, t; n=0;

for(i=0; s[i]!='\\0'; i++) n++; for(i=1; i

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

for(j=___2___+2 ; js[j]) t=j; if(t!=i)

{ x=s[i]; s[i]=s[t]; s[t]=x; } }

for(i=1,j=0; i

main()

{ char s[80]=\

printf(\ fun(s,p);

printf(\}

6、程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的信息。函数fun的功能是输出这位学生的信息。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include typedef struct { int num;

char name[9]; char sex;

struct { int year,month,day ;} birthday; float score[3]; }STU;

/**********found**********/ void show(STU ___1___) { int i;

printf(\

tt.birthday.year, tt.birthday.month, tt.birthday.day); for(i=0; i<3; i++)

/**********found**********/ printf(\ printf(\}

main( )

{ STU std={ 1,\ printf(\/**********found**********/ show(___3___); }

7、给定程序中,函数fun的功能是:计算N×N矩阵的主对角线元素和反向对角线元素之和,并作为函数值返回。注意:要求先累加主对角线元素中的值,然后累加反向对角线元素中的值。例如,若N=3,有下列矩阵: 1 2 3 4 5 6

7 8 9fun函数首先累加1、5、9,然后累加3、5、7,函数的返回值为30。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构!


2012年3月计算机2级答案.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中小学生防溺水安全教育材料

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: