全国计算机等级考试 2011年3月.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
全国计算机等级考试 2011年3月

一、程序填空题请补充main函数,该函数的功能是:输出一个4×4的矩阵,要求必须使用行指针表示输出变量。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在main函数的横线上填入所编写的若干表达式或语句。试题程序:#include stdlib.h#include stdio.hvoid main(){ static int arr [4][4]={ {9,8,7,6},{6,5,4,3},{3,2,1,0},{2,4,6,8}};int (*p)[4],j,i;p=___1____;system(CLS);for (i=0;i4;i++){ printf(\n\n);for (j=0;j4;j++)printf(%4d,____2____);}}1、arr2、*(*(p+i)+j)解析:题目中要求必须使用行指针表示输出变量,由程序可知变量p为行指针,其应该初始化为数组的首地址。因此第一空填arr;每输出一个数组元素时,变量p为上一行的末地址加上该行的偏移量,因此第二空填*(*(p+i)+j)。一、程序填空题请补充函数proc,该函数的功能是计算下面公式SN的值:例如,当N=20时,SN=29.031674。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数proc的横线上填入所编写的若干表达式或语句。试题程序:#include stdlib.h#include conio.h#include stdio.hdouble proc(int n){ double s=1.0,s1=0.0;int k;for (【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=%lf ,sum);}【1】k=2【2】s+=(2*k-1)/s1【3】s解析:由题目中所给公式可知,多项式的第一项为1,变量s中存放多项式的和,其初始值为1,因此,循环从第二项开始,故【1】填k=2;变量s1中存放各项表达式的值,由公式可知【2】填s+=(2*k-1)/s1;题目中要求将多项式的和返回到主函数当中,因此【3】填s。二、程序改错题下列给定程序中,函数proc的功能是根据整型形参n,计算如下公式的值。y=1-1/(2×2)+1/(3×3)-1/(4×4)+…+(-1)(n+1)/(n×n)例如,n中的值为10,则应输出0.817962。请修改程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include stdlib.h#include conio.h#include stdio.hdouble proc(int n){ double y=1.0;/*******found*******/int j=1;int i;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 %lf\n ,proc(n));}(1)错误:int j=1;正确:double j=1.0;(2)错误:y+=1/(i * i);正确:y+=j/(i * i);解析:由函数proc可知,变量j为控制每一项符号的变化,并且作为运算的分子,应改为double型变量。因此int j=1应改为double j=1.0;变量y中存放多项式的值,多项式中的每一项符号由变量j决定,因此y+=1/(i * i)应改为y+=j/(i * i)。三、程序设计题编写一个函数,从传入的num个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(以****作为结束输入的标志)。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数proc的花括号中填入所编写的若干语句。试题程序:#include conio.h#include stdio.h#include string.h#include stdlib.hChar *proc(char (*a)[81], int num, char *max){ }void main(){ char str[10][81],*ps;int n, i=0;system(CLS);printf(输入若干个字符串:);for (i=0;i5;i++) gets(str[i]);printf(\n

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档