2012年计算机二级C语言50套上机题及答案(8)

2019-01-19 16:21

} main( ) { void char a[N];

printf ( \ printf ( \ fun ( a ); printf(\

printf ( \ puts ( a ); }

30、请编写函数fun,其功能是:将一组得分中,去掉一个最高分和一个最低分,然后求平均值,并通过函数返回。函数形参a指向存放得分的数组,形参n中存放得分个数(n>2)。

例如,若输入9.9 8.5 7.6 8.5 9.3 9.5 8.9 7.8 8.6 8.4十个得分,则输出结果为:8.687500。

注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 #include void

double fun(double a[ ] , int n)

{

double fun(double a[ ] , int n) {double t,r,sum; int i,j; for(i=0;i<9;i++) for(j=i+1;j<10;j++)

if(a[i]>a[j])

{ t=a[i];a[i]=a[j];a[j]=t;}

sum=a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]; r=sum/8.0; return r;

} main()

{ double b[10], r; int i;

printf(\输入10个分数放入b数组中 : \ for (i=0; i<10; i++) scanf(\ printf(\输入的10个分数是 : \

for (i=0; i<10; i++) printf(\ r = fun(b, 10);

printf(\去掉最高分和最低分后的平均分 : %f\\n\ }

31、请编写函数fun, 函数的功能是:实现B=A+A', 即把矩阵A加上A的转置, 存放在矩阵B中。计算结果在 main 函数中输出。例如,输入下面的矩阵: 其转置矩阵为: 1 2 3 1 4 7 4 5 6 2 5 8 7 8 9 3 6 9 程序输出: 2 6 10 6 10 14

10 14 18

注意: 部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include

void fun ( int a[3][3], int b[3][3])

{ int i,j;

for(i=0;i<3;i++) for(j=0;j<3;j++) b[i][j]=0; for(i=0;i<3;i++) for(j=0;j<3;j++) b[i][j]=a[i][j]+a[j][i];

}

main( ) /* 主程序 */

{ int a[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}, t[3][3] ; int i, j ; void fun(a, t) ;

for (i = 0 ; i < 3 ; i++) { for (j = 0 ; j < 3 ; j++) printf(\ printf(\

} }

32、请编写函数fun,函数的功能是查找x在s所指数组中下标的位置作为函数值返回,若x不存在,则返回-1。

注意:部分源程序存在PROG1.C中,请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include #include #define N 15 void

int fun( int *s, int x)

{ int i; for(i=0;i if(s[i]==x) return i; return -1;

} main()

{ int a[N]={ 29,13,5,22,10,9,3,18,22,25,14,15,2,7,27},i,x,index; printf(\数组中的数据 :\\n\ for(i=0; i

printf(\给x输入待查找的数 : \ index=fun( a, x );

printf(\

}

33、编写程序, 实现矩阵(3行3列)的转置(即行列互换) 例如, 输入下面的矩阵: 100 200 300 400 500 600 700 800 900 程序输出: 100 400 700 200 500 800 300 600 900

注意: 部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。 #include

void fun(int array[3][3])

{ int i,j,t;

for(i=0;i<3;i++) for(j=0;j {

t=array[i][j]; array[i][j]=array[j][i]; array[j][i]=t;

}


2012年计算机二级C语言50套上机题及答案(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:最新大客户团购营销模式

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

马上注册会员

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