资源描述:
《全国计算机二级C【机试】题库.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、下列给定程序中,函数fun的功能是:计算S=f(-n)+f(-n+1)+…+f(0)+f(1)+f(2)+…f(n)的值。例如,当n为5时,函数值应为10.407143。f(x)函数定义如下:f(x)=请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include#include#include#include/*************found**************/doublef(doublex){if
2、(x==0.0
3、
4、x==2.0)return0.0;elseif(x<0.0)return(x-1)/(x-2);elsereturn(x+1)/(x-2);}doublefun(intn){inti;doubles=0.0,y;for(i=-n;i<=n;i++){y=f(1.0*i);s+=y;}/*************found**************/returns;}voidmain(){system("CLS");printf("%f",fun(5));}【参考答案】(1)错误:f(doublex)正确:doublef(double
5、x)(2)错误:returns正确:returns;t=1+1/2+1/3+1/4+…+1/m例如,若输入5,则应输出2.283333。请改正程序中的错误,使它能计算出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include#include#includedoublefun(intm){doublet=1.0;intI;for(I=2;I<=m;I++)/*************found**************/t+=1.0/I;/*******
6、******found**************/returnt;}voidmain(){intm;system("CLS");printf("Pleaseenter1integernumber:");scanf("%d",&m);printf("Theresultis%1f",fun(m));}【参考答案】(1)错误:t+=1.0/k;正确:t+=1.0/I;(2)错误:returnI;正确:returnt;下列给定程序中,函数fun的功能是:分别统计字符串中大写字母和小写字母的个数。例如,给字符串s输入:AaaaBBb123CCccccd
7、,则应输出结果:upper=5,lower=9。请改正程序中的错误,使它能计算出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include#include/*********found***********/voidfun(char*s,int*a,int*b){while(*s){/*********found***********/if(*s>='A'&&*s<='Z')(*a)++;/*********found***********/if(*s>='a'&&*s<='
8、z')(*b)++;s++;}}main(){chars[100];intupper=0,lower=0;printf("pleaseastring:");gets(s);fun(s,&upper,&lower);printf("upper=%dlower=%d",upper,lower);}【参考答案】(1)错误:voidfun(char*s,inta,intb)正确:voidfun(char*s,int*a,int*b)(2)错误:a++;正确:(*a)++;(3)错误:b++;正确:(*b)++;下列给定程序中函数fun的功能是:计算正整
9、数num各位上的数字之积。例如,若输入252,则输出应该是20。若输入202,则输出应该是0。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include#includelongfun(longnum){/*************found**************/longk=1;do{k*=num%10;/*************found**************/num/=10;}while(num);return(k);}main
10、(){intn;printf("Pleaseenteranumb