c语言50到100套,全国9月计算机等级试二级C语言上机题库100套(第二部分50至100套)(二级C语言).doc...

本文档提供了全国计算机等级考试二级C语言上机题库的第50至100套中的第50套题目详解,涉及矩阵对称操作和函数计算。第1部分介绍了如何在矩阵中沿主对角线对称元素相加,并更新了源代码;第2部分纠正了计算函数F(x,y,z)的宏定义和返回值语法。阅读者将学会如何调试和修改代码以获得正确结果。
摘要由CSDN通过智能技术生成

全国9月计算机等级试二级C语言上机题库100套(第二部分50至100套)(二级C语言)

第50套:

给定程序中,函数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

{ for(j=0; j

{

/**********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("\nThe original array:\n");

for(i=0; i

{ for(j=0; j

printf("\n");

}

fun(t);

printf("\nThe result is:\n");

for(i=0; i

{ for(j=0; j

printf("\n");

}

}

解题思路:

第一处:形参t的定义,整数数组其宽度为N,所以应填:[N]。

第二处:对称元素相加,其结果仍存放在左下三角元素中,所以应填:t[i][j]。

第三处:右上三角元素置为0,所以应填:t[j][i]。

***************************************************

给定程序MODI1.C中函数fun的功能是:计算函数

F(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。其中x和y的值不等,z和y的值不等。

例如,当x的值为9、y的值为11、z的值为15时,函数值为 -3.50。

请改正程序中的错误,使它能得出正确结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

给定源程序:

#include

#include

#include

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

#define FU(m,n) (m/n)

float fun(float a,float b,float c)

{ float value;

value=FU(a+b,a-b)+FU(c+b,c-b);

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

Return(Value);

}

/* 宏为世纪教育 */

main()

{ float x,y,z,sum;

printf("Input x y z: ");

scanf("%f%f%f",&x,&y,&z);

printf("x=%f,y=%f,z=%f\n",x,y,z);

if (x==y||y==z){printf("Data error!\n");exit(0);}

sum=fun(x,y,z);

printf("The result is : %5.2f\n",sum);

}

解题思路:

第一处:define定义错误,所以应改为:#define FU(m,n) ((m)/(n))。

第二处:return错写成Return,变量value错写成Value。

***************************************************

规定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字

符串中的前导*号全部删除,中间和尾部的*号不删除。

例如,字符串中的内容为:*******A*BC*DEF*G****,删除后,字符串中的内

容应当是:A*BC*DEF*G****。在编写函数时,不得使用C语言提供的字符串函数。

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值