欢迎来到天天文库
浏览记录
ID:41786258
大小:33.50 KB
页数:3页
时间:2019-09-02
《2014年计算机二级考试C语言考前预测上机试题1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2014年计算机二级考试C语言考前预测上机试题(1)一、程序填空题 请补充函数proc(),咳函数的功能是计算下面公式s。 的值: 例如,当N=20时,SN=29.031674。 注意:部分源程序给出如下。 请勿改动main()函数和其他函数中的任何内容,仅在 函数proc()的横线上填入所编写的若干表达式或语句。 试题程序: #include #include #include double proc(int n) { double s=1.0,s1=0.0; int k; for
2、(【1】 ;k<=n;k++) { s1=S; 【2】 ; } return 【3】 ; } void main() { int k=0: double sum; system("CLS"); printf("\nPlease input N="): scanf("%d",&k); sum=proc(k): printf("\nS=%1f",sum); }二、程序改错题 下列给定程序中,函数proc()的功能是根据整
3、型形参n,计算如下公式的值: Y=1-1/(22)+1/(33) 1/(44)+…+(-1)(n+1)/(nn) 例如,n中的值为10,则应输出0.817962。 请修改程序中的错误,使它能得到正确结果。 注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include #include #include double proc(int n) { double y=1.0; //****found**** int j=1; int i;
4、 for(i=2;i<=n;i++) { j=-1*j;//****found**** y+=1/(i*i); } return(y); } void main() { int n=10: system("CLS"); printf("\nThe result is%1f\n”,proc(n)); } 三、程序设计题 编写一个函数,从传人的M个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标志)。 注意:部
5、分源程序给出如下。 请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。 试题程序: #include #include #include char*proc(char(*a)[81],int num) { } void main() { char ss[10][81],*max; int n,i=0; printf("输入若干个字符串:"); gets(ss[i]); puts(ss[i]); while(!
6、strcmp(ss[i],"****")==0) { i+-; gets(ss[i]); puts(ss[i]); } n=i: max==proc(ss,n); printf("\nmax=%s\n",max); } 上机考试试题答案与解析 一、程序填空题 【1】k=2【2】s+=(2*k一1)/sl【3】s 【解析】由题目中所给公式可知,多项式的第一项为1。变量s中存放多项式的和,其初始值为l。因此,循环从第二项开始,因此,【1】处填“k=2”;变量sl中存放各项
7、表达式的值,由公式可知,【2】处填“s+=(2*k-1)/s1”;题目中要.求将多项式的和返回到主函数当中,因此,【3】处填“s”。 二、程序改错题 (1)错误:int j=1; 正确:doublej=1.0; (2)错误:y+=1/(i*i); 正确:y+=i/(i*); 【解析】由函数proc()可知,变量j的作用是控制每一项符号的变化,并且作为运算的分子,应改为double型变量。因此,“intj=1;”应改为“doublej=1.0;”。变量y中存放多项式的值,多项式中的每一项符号由变量j决定。因此,“y +=t/(i*i);”应
8、改为“y+
此文档下载收益归作者所有