全国计算机等级考试二级C机试试题7.doc_第1页
全国计算机等级考试二级C机试试题7.doc_第2页
全国计算机等级考试二级C机试试题7.doc_第3页
全国计算机等级考试二级C机试试题7.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

全国计算机等级考试二级C机试试题7一、填空题 下列给定程序中,函数fun的功能是:计算如下公式前n项的和并作为函数值返回。例如,当形参n的值为10时,函数返回值为9.612558。请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include double fun(int n) int i; double s, t;/*found*/ s=_1_;/*found*/ for(i=1; i=_2_; i+) t=2.0*i;/*found*/ s=s+(2.0*i-1)*(2.0*i+1)/_3_; return s;main() int n=-1; while(n0): ); scanf(%d,&n); printf(nThe result is: %fn,fun(n);二、改错题下列给定程序中函数fun的功能是:统计substr所指的子符串在str所指的字符串中出现的次数。例如,若字符串为aaas 1kaaas,子字符串为as,则应输出2。请改正程序中的错误,使它能得出正确的结果。注意:部分源程序在文件MODI1.C中,不得增行或删行,也不得更改的程序的结构!#include int fun (char *str,char *substr) int i,j,k,num=0;/*found*/ for(i = 0, stri, i+) for(j=i,k=0;substrk=strj;k+,j+)/*found*/ If(substrk+1=0) num+; break; return num;main() char str80,substr80; printf(Input a string:) ; gets(str); printf(Input a substring:) ; gets(substr); printf(%dn,fun(str,substr);三、编程题编写函数fun,其功能是:根据以下公式求的值(要求精度0.0005,即某项小于0.0005时停止迭代)。 程序运行后,若输入精度0.0005,则程序应输出为3.14。注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include #include double fun ( double eps)main( ) double x; printf(Input eps:) ; scanf(%lf,&x); printf(neps = %lf, PI=%lfn, x, fun(x); 答案一、填空题【参考答案】(1) 0(2) n(3) (t*t)【考点分析】本题考查:变量初始化操作,需要注意该变量是用作累加器还是累乘器;for循环语句。【解题思路】填空1:程序开始定义了变量s,但没有对其进行初始化,根据公式及后面的程序可知变量s用来存储公式的前n项和,因此该变量应初始化为0。填空2:通过for循环语句将表达式各项进行累加,结果存于变量s中,循环变量i的取值范围为1n。填空3:根据题目要求确定表达式通项,前面已定义t2.0【解题宝典】程序要求计算表达式值时,一般我们都设定一个变量s,并赋初值,如果s用来存放表达式的和,则赋初值为0;如果s用来存放表达式的积,则赋初值为1。二、改错题【参考答案】(1)for(i=0;stri;i+)(2)if(substrk+1= 0)【考点分析】本题考查:for循环语句的格式,for循环语句使用最为灵活,其一般形式为:for(表达式1;表达式2;表达式3) ,注意表达式之间使用;相隔;if条件语句的格式,其中if关键字需要区别大小写,这里不能混淆使用。关键字是由C语言规定的具有特定意义的字符串,也称为保留字。用户定义的标识符不应与关键字相同,并且关键字应小写。【解题思路】我们先看循环条件for(i 0, stri, i),不难发现此处for循环语句的格式有误,其中表达式之间应以;相隔;同时很容易发现if条件语句处的关键字书写错误。三、编程题【参考答案】double fun ( double eps) double s=1.0,s1=1.0; int n=1; while(s1=eps) /*当某项大于精度要求时,继续求下一项*/ s1=s1*n/(2*n+1); /*求多项式的每一项*/ s=s+s1; /*求和*/ n+; return 2*s;【考点分析】本题考查:迭代法求给定多项式的值,迭代算法:让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论