自考“高级语言程序设计”习题答案详解(37)
6.4 程序设计题
1.编一个名为root的函数,求方程ax*x + bx + c=0的b*b-4ac,并作为函数的返回值。其中的a、b、c作为函数的形式参数。
「解」该函数应设3个形参,分别表示一元二次方程的三个系数。函数按公式求出结果返回即可:
double root(double a,double b,double c)
{ return b*b+4.0*a*c;
}
2.编一个函数,若参数y为闰年,则返回1;否则返回0.
「解」由每四年一个闰年,但每100年少一个闰年,每400年又增加一个闰年的约定。记年份为y,则y年是闰年的条件是:
(y能被4整除,但不能被100整除)或(y能被400整除)
用逻辑表达式可描述如下:
(y%4==0 && y0) ||y@0==0
写成函数为:
int isLeap(int y)
{ return( y% 4==0 && y% 100) || y@0== 0;
}
3.编一个无返回值,名为root2的函数,要求如下:
形式参数: a,b,c单精度实型,root单精度实型数组名。
功能:计算ax*x +bx+c=0的两个实根(设b*b-4ac 0)存入数组root[2]中。
「解」函数根据形参。a,b,c的值,首先计算d=b*b-4*a*c.考虑到实数运算时的计算误差,两个几乎相等的数相减有效位数也几乎全部丢失的情况,应先求出绝对值大的根,然后利用报与系数之间的关系,再求绝对值小的根。函数定义如下:
void root2( float a,float b,float c, float root[])
{ float re,im,d=b*b-4.0*a*c;/*求判别式*/
re=-b/(2.0*);
if(d=0.0) { /*有两个实根,先求绝对值大的根*/
im=(float)sqrt((double)d)/(2.0*a) ;
root[0] =re+(b<0.0? im:-im);
root[1]=c/(a*root[0]);
}
}
4.编一个无返回值,名为trus的函数,要求如下:
形式参数:数组s1[2][3]和s2[3][2] 是整型数组。
功能:将s1数组转置后存入s2数组中。
「解」为实现问题要求,可用两重循环,按行按列的顺序遍历数组s1的元素,将它们分别复制到数组s2的对位位置即可。
void trus(int sl[][3], int s2[][2])
{ int i,j ;
for(i=0; i<2; i++)
for(j= 0;j<3; j++)
s2[j] =s1[j];
}
【自考“高级语言程序设计”习题答案详解(37)】相关文章:
★ 2012年自考“高级语言程序设计”经典习题及答案(24)
★ 2012年自考“高级语言程序设计”经典习题及答案(10)
★ 2012年自考“高级语言程序设计”经典习题及答案(20)
★ 2012年自考“高级语言程序设计”经典习题及答案(23)
★ 2012年自考“高级语言程序设计”经典习题及答案(14)
热点推荐:
工学
- 2020-11-17【工学】2012年自考“工程项目管理”单选练习(9)
- 2020-11-17【工学】2012年自考“互联网软件应用与开发”复习资料(1)
- 2020-11-17【工学】2012年自考“互联网软件应用与开发”复习资料(18)
- 2020-11-17【工学】2012年自考“互联网软件应用与开发”复习资料(34)
- 2020-11-17【工学】2012年自考“互联网软件应用与开发”复习资料(35)
- 2020-11-17【工学】2012年自考“互联网软件应用与开发”复习资料(38)
- 2020-11-17【工学】2012年自考“互联网软件应用与开发”复习资料(41)
- 2020-11-17【工学】2012年自考“互联网及其应用”串讲笔记(1)
其他最新资讯
- 2023-12-29【自考政策】广西自考网络助学平台新增61门课程
- 2020-12-04【免考问题】哪些证书可以免考自考相关课程?
- 2020-12-04【免考问题】自考免考有哪些条件?
- 2020-12-04【综合问题】自考本科文凭有用吗?
- 2020-12-04【综合问题】自考本科需要考多少门课?
- 2020-11-17【综合问题】江苏省高等教育自学考试网上报名常见问题及解答
- 2020-11-17【经济学】2012年自考“中国税制”笔记串讲(8)
- 2020-11-17【自考政策】全国自考办领导:未来自考将大力发展网络助学
网友关注
- 【考务考籍】安徽2011年1月自学考试报考课程查询
- 【考务考籍】江西2010年10月自考通知单下载及准考证领取的通知
- 【考务考籍】深圳龙岗区2010年下半年自考准考证领取地址变更
- 【考务考籍】济南自考2010年10月考点地址一览表
- 【考务考籍】广东省珠海市2010年上半年自考毕业证发放通知
- 【考务考籍】江西2010年自学考试课程免考规定
- 【考务考籍】北京自考2010年10月考试通知单查询
- 【考务考籍】自学考试要实现“三大转变”
网友关注视频
- 30.3 由不共线三点的坐标确定二次函数_第一课时(市一等奖)(冀教版九年级下册)_T144342
- 冀教版小学数学二年级下册第二周第2课时《我们的测量》宝丰街小学庞志荣
- 每天日常投篮练习第一天森哥打卡上脚 Nike PG 2 如何调整运球跳投手感?
- 外研版八年级英语下学期 Module3
- 人教版二年级下册数学
- 【部编】人教版语文七年级下册《逢入京使》优质课教学视频+PPT课件+教案,安徽省
- 沪教版牛津小学英语(深圳用) 五年级下册 Unit 12
- 沪教版牛津小学英语(深圳用) 四年级下册 Unit 3