ImageVerifierCode 换一换
格式:DOC , 页数:28 ,大小:126.50KB ,
资源ID:503097      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-503097.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文([计算机类试卷]国家二级(C语言)机试模拟试卷33及答案与解析.doc)为本站会员(diecharacter305)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

[计算机类试卷]国家二级(C语言)机试模拟试卷33及答案与解析.doc

1、国家二级( C语言)机试模拟试卷 33 及答案与解析 一、选择题 1 程序流程图中带有箭头的线段表示的是 ( )。 ( A)图元关系 ( B)数据流 ( C)控制流 ( D)调用关系 2 结构化程序设计的基本原则不包括 ( )。 ( A)多态性 ( B)自顶向下 ( C)模块化 ( D)逐步求精 3 软件设计中模块划分应遵循的准则是 ( )。 ( A)低内聚低耦合 ( B)高内聚低耦合 ( C)低内聚高耦合 ( D)高内聚高耦合 4 在软件开发中,需求分析阶段产生的主要文档是 ( )。 ( A) 可行性分析报告 ( B)软件需求规格说明书 ( C)概要设计说明书 ( D)集成测试计划 5 算法

2、的有穷性是指 ( )。 ( A)算法程序的运行时间是有限的 ( B)算法程序所处理的数据量是有限的 ( C)算法程序的长度是有限的 ( D)算法只能被有限的用户使用 6 对长度为 n的线性表排序,在最坏情况下,比较次数不是 n(n 1)/2的排序方法是 ( )。 ( A)快速排序 ( B)冒泡排序 ( C)直接插入排序 ( D)堆排序 7 下列关于栈的叙述正确的是 ( )。 ( A)栈按 “先进先出 “组织 数据 ( B)栈按 “先进后出 “组织数据 ( C)只能在栈底插入数据 ( D)不能删除数据 8 在数据库设计中,将 E R图转换成关系数据模型的过程属于 ( )。 ( A)需求分析阶段

3、( B)概念设计阶段 ( C)逻辑设计阶段 ( D)物理设计阶段 9 有三个关系 R、 S和 T如下:由关系 R和 S通过运算得到关系 T,则所使用的运算为 ( )。 ( A)并 ( B)自然连接 ( C)笛卡尔积 ( D)交 10 设有表示学生选课的三张表,学生 S(学号,姓名,性别,年龄,身份证号 ),课程 C(课号,课名 ),选课 SC(学号,课号,成绩 ),则表 SC的关键字 (键或码 )为( )。 ( A)课号,成绩 ( B)学号,成绩 ( C)学号,课号 ( D)学号,姓名,成绩 11 C语言程序的模块化通过以下哪个选项来实现 ( A)变量 ( B)函数 ( C)程序行 ( D)语

4、句 12 以下选项中不属于 C语言标识符的是 ( A)常量 ( B)用户标识符 ( C)关键字 ( D)预定义标识符 13 以下选项中不属于 C语言程序运算符的是 ( A) sizeof ( B) ( C) ( ) ( D) ( B) A=a+b; ( C) a=a+b ( D) A: a:b; 15 若有以下程序段 double x=5.16894; printf(“%fn“, (int)(x*1000+0.5)/(double)1000 ); 则程序段的输出结果是 ( A) 5.170000 ( B) 5.175 ( C) 5.169 ( D) 5.168 16 设有定义: double

5、a,b,c; 若要求通过输入分别给 a、 b、 c输入 1、 2、 3,输入形式如下(注:此处 代表一个空格 ) 1.02.03.0回车 则能进行正确输入的语句是 ( A) scanf(“%lf%lf%lf“,a,b,c); ( B) scanf(“%lf%lf%lf“, ( C) scanf(“%f%f%f“, ( D) scanf(“%5.1lf%5.1lf%5.1lf“, 17 若有定义语句 char c=101; 则变量 c在内存中占 ( A) 1个字节 ( B) 2个字节 ( C) 3个字节 ( D) 4个字节 18 若有以下程序 #include stdio.h main() ch

6、ar c1, c2; c1=C+8-3; c2=9-0; printf(“%c %dn“, c1, c2); 则程序的输出结果是 ( A) H 9 ( B) H 9 ( C) F 9 ( D)表达式不合法输出无定值 19 表示关系式 xyz的 C语言表达式的是 ( A) (x =y) switch( x ) case 1: switch ( y ) case 0: a+; break; case 1: b+; break; case 2: a+; b+; break; printf(“a=%d,b=%dn“,a,b ); 程序运行后的输出结果是 ( A) a=1,b=0 ( B) a=1,b=

7、1 ( C) a=2,b=1 ( D) a=2,b=2 21 有以下程序 #include stdio.h main() int k, j, s; for( k=2; k 6; k+,k+ ) s=1; for (j=k; j 6; j+ ) s+=j; printf(“%dn“ , s ); 程序运行后的输出结果是 ( A) 6 ( B) 10 ( C) 24 ( D) 40 22 由以下 while构成的循环,循环体执行的次数是 int k=0; while ( k=1 ) k+; ( A)有语法错,不能执行 ( B)一次也不执行 ( C)执行一次 ( D)无限次 23 有以下程序 #in

8、clude stdio.h int fun( int a, intB) return a+b; main() int x=6, y=7, z=8, r ; r = fun ( fun(x,y), z- ); printf (“ %dn“ , r ); 程序运行后的输出结果是 ( A) 21 ( B) 15 ( C) 20 ( D) 31 24 以 下选项中函数形参不是指针的是 ( A) fun( int *a ) ( B) fun( int a10 ) ( C) fun( int p= for( x=0; x 3; x+ ) y=y+*( p+x ); printf( “%dn“, y );

9、程序运行后的输出结果是 ( A) 17 ( B) 19 ( C) 18 ( D) 20 26 以下程序调用 fun函数求数组中最大值所在元素的下标。 #include stdio.h void fun( int *s,int n, int *k ) int i; for( i=0 ,*k=i; i n; i+ ) if( si s*k ) _ ; main() int a5=1,6,2,8,0, k; fun( a, 5, printf(“%d %dn“, k, ak ); 在横线处应填入的内容是 ( A) *k=i ( B) k=i ( C) *k=i-s ( D) k=i-s 27 有以下

10、程序 #include stdio.h main() int a34= 1,3,5,7,9,11,13,15,17,19,21,23, (*p)4=a,i,j,k=0; for( i=0; i 3; i+ ) for( j=0; j 2; j+ ) k=k+*(*(p+i)+j); printf(“%dn“, k ); 程序运行后的输出结果是 ( A) 108 ( B) 68 ( C) 99 ( D) 60 28 有以下程序 #include stdio.h int funa( int a, intB) return a+b; int funb( int a, intB) return a-b

11、; int sss( int (*t)(), int x, int y ) return( (*t)(x,y) ); main() int x; x=sss( funa, 9,3 ); x+=sss(funb,8,3 ); printf(“%dn“, x ); 程 序运行后的输出结果是 ( A) 24 ( B) 23 ( C) 17 ( D) 22 29 有以下程序 #include stdio.h int fun( int x ) int p; if (x=0 | x=1) return(3); p= x - fun( x-2 ); return (p); main() printf (“%

12、dn“, fun( 9 ) ); 程序运行后的输出结果是 ( A) 4 ( B) 5 ( C) 9 ( D) 7 30 以下选项中,能正确进行字符串赋值的是 ( A) char *s = “ABCDE“ ; ( B) char s5 = A, B, C, D, E ; ( C) char s45 = “ABCDE“ ; ( D) char *s ; gets( s ); 31 有以下程序 #include stdio.h void fun( char *p ) int i; for(i=0; i 4; i+ ) printf(“%s“,pi); main() char *s6= “ABCD“,

13、“EFGH“,“IJKL“,“MNOP“,“QRST“,“UVWX“ ; fun(s); printf(“n“ ); 程序运行后的输出结果是 ( A) ABCDEFGHIJKL ( B) ABCD ( C) AEIM ( D) ABCDEFGHIJKLMNOP 32 以下 fun函数的功能是将形参 s所指字符串内容颠倒过来 void fun( char *s ) int i, j, k; for( i=0, j=strlen(s) _ ; i j; i+,j- ) k=si; si=sj; sj=k; 在横线处应填入的内容是 ( A) +1 ( B) -1 ( C) 0 ( D) ,k=0 3

14、3 有以下程序 #include stdio.h void fun( char *p, int n ) char b6=“abcde“; int i; for( i=0,p=b; i n; i+ ) pi=bi; main() char a6=“ABCDE“; fun(a, 5); printf(“%sn“,a); 程序运行后的输出结果是 ( A) abcde ( B) ABCDE ( C) edcba ( D) EDCBA 34 有以下程序 #include stdio.h fun( int a, int b ) int static m=0, i=2; i=i+m+1; m=i+a+b;

15、return m; main() int k=4, m=1, p; p=fun( k, m); printf(“%d,“,p); p=fun( k, m); printf(“%dn“,p); 程序运行后的输出结果是 ( A) 8,17 ( B) 7,16 ( C) 8,8 ( D) 7,17 35 为了建立如图所示的存储结构(即每个结点含两个域, data是数据域 ,next是指向结点的指针域),则在【 】 处应填入的选项是 Struct link char data; 【 】 node; ( A) link next; ( B) struct link *next; ( C) link *n

16、ext; ( D) struct link next; 36 以下结构体说明 和变量定义中 ,正确的是 ( A) typedef struct abc int n;double m; ABC; ABC x,y; ( B) struct abc int n;double m ; struct abc x, y; ( C) struct ABC int n;double m; struct ABC x, y; ( D) struct abc int n;double m; ; abc x, y; 37 有以下程序 #include stdio.h #include stdlib.h void fu

17、n(int *p1,int *p2,int *s ) s=( int * )malloc( sizeof(int) ); *s = *p1 + *(p2+); main() int a2=1,2 , b2=10,20, *s=a; fun( a,b,s ); printf(“%dn“, *s ); 程序运行后的输出结果是 ( A) 11 ( B) 10 ( C) 1 ( D) 2 38 以下程序依次把从终端输入的字符存放到 f文件中,用 #作为结束输入的标志 , 则在横线处应填入的选项是 #include stdio.h main() FILE *fp; char ch; fp=fopen(

18、“fname“, “w“ ); while( ( ch=getchar() !=# ) fputc( _ ); fclose(fp); ( A) ch, “fname“ ( B) fp, ch ( C) ch ( D) ch, fp 39 有以下程序 #include stdio.h #define N 2 #define M N+1 #define NUM (M+1) * M/2 main() printf(“%dn“,NUM ); 程序运行后的输出结果是 ( A) 4 ( B) 8 ( C) 9 ( D) 6 40 有以下程序 #include stdio.h main() int i=0

19、; i = i; printf(“%dn“,i); 程序运行后的输出结果是 ( A) 8 ( B) 0 ( C) 1 ( D) -1 二、程序填空题 41 下列给定程序中,函数 fun的功能是:把形参 a所指数组中的最小值放在元素a0中,接着把 a所指数组中的最大值放在 a1元素中;再把 a所指数 组元素中的次小值放在 a2中,把 a所指数组元素中的次大值放在 a3,依此类推。 例如,若 a所指数组中的数据最初排列为: 9, 1, 4, 2, 3, 6, 5, 8, 7;则按规则移动后,数据排列为: 1, 9, 2, 8, 3, 7, 4, 6, 5。形参 n中存放 a所指数组中数据的个数。

20、规定 fun函数中的 max存放当前所找的最人值, px存放当前所找最大值的下标。 请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构 ! 试题程序: #include stdio h #define N 9 void fun(int a, int n) int i, j, max , min , pxt pn , t; for(i=0 ; i n一 1; i+=2) /*found*/ max=min=【 1】 , px=pn=i; for(J=i+1 ; j n; j+) /*found*/ if(max

21、 【 2】 ) max=aj; px=j, /*found*/ if(min 【 3】 ) min=aj; pn=j; if(pn!=i) t=ai; ai=min; apn=t, if(px=i)px=pn; if(px!=i+1) t=ai+1; ai+1=max; apx=t; void main() int bN=9, 1, 4, 2, 3, 6, 5, 8, 7, i; printf(“ nThe original data: n”); for(i=0; i N; i+) printf(“ 4d”, bi); printf(“ n”), fun(b, N); printf(“ nTh

22、e data after moving: n”); for(i=0; i N; i+) printf(“ 4d”, bi); printf(“ n”), 三、程序修改题 42 下列给定程序中,函数 fun的功能是:将 S所指字符串中最后一次出现的与 t1所指字符申相同的了串替换成 t2所指字符串,所形成的新串放在 w所指的数组中。要求 t1和 t2所指字符串的长度相同。 例如,当 s所指字符串中的内容为 “abcdabfabc”, t1所指串中的内容为 “ab”, t2所指子串中的内容为 “99”时,结果在 W所指的数组中的内容应为 “abcdabf99c”。 清改正程序中的错误,使它能得出正

23、确的结果。 注意:不要改动 main函数,不得增行或删行,也不得更改程序的结构 ! 试题程序: #include conio h #include Stdio h #include string h void fun(char*S, char t1, char t2, char W) char*p, *r, *a; strcpy(W, S); /*found*/ while(W) p=W; r=t1; while(*r) /*found*/ IF(*r=*P) r+; p+; else break; if(*r= 0) a=w; w+: r=t2; while(*r) *a=*r: a+; r

24、+; main() char S100, t1100, t2100, W100; printf (“ nPlease enter string s: ”); Scanf(“ S”, S); printf(“ nPlease enter substring t1: ”), Scanf(“ S”, t1); printf(“ nPlease enter substring t2: ”); scanf(“ S”, t2); if(strlen(t1)=strlen(t2) fun(S, t1, t2, W); printf(“ nThe result is: S n”, W); else print

25、f(“ nError: strlen(t1)! =strlen(t2) n”), 四、程序设计题 43 编写函数 fun,其功能是:根据以下公式求 的值 (要求精度 0 0005,即某项小于 0 0005时停止迭代 )。 程序运行后,若输入精度 0 0005,则程序应输出为 3 140578。 注意:部分源程序给出如下。 请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填 入你编写的若干语句。 试题程序: #include stdio h #include conio h #include math h double fun(double eps)void main(

26、) double x; printf(”Input eps: ”), scanf(” lf”, x); printf(” neps= lf, PI= lf n”, x, fun(x); 国家二级( C语言)机试模拟试卷 33 答案与解析 一、选择题 1 【正确答案】 C 【试题解析】 在数据流图中,用标有 名字的箭头表示数据流。在程序流程图中,用标有名字的箭头表示控制流。所以选择 C。 2 【正确答案】 A 【试题解析】 结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用 goto语句,所以选择 A。 3 【正确答案】 B 【试题解析】 软件设计中模块划分应遵循的准则是高内聚低偶合

27、、模块大小规模适当、模块的依赖关系适当等。模块的划分应遵循一定的要求,以保证模块划分合理,并进一步保证以此为依据开发出的软件系统可靠性强,易于理解和维护。模块之间的耦合应尽可能的低,模块的内聚度应尽可能的高 。 4 【正确答案】 B 【试题解析】 A)错误,可行性分析阶段产生可行性分析报告。 C)错误,概要设计说明书是总体设计阶段产生的文档。 D)错误,集成测试计划是在概要设计阶段编写的文档。 B)正确,需求规格说明书是后续工作如设计、编码等需要的重要参考文档。 5 【正确答案】 A 【试题解析】 算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。有穷性是指算法程序的运行时间是

28、有限的。 6 【正确答案】 D 【试题解析】 除了堆排序算法的比较次数是 O( nlog2n),其他的 都是 n(n1)/2。 7 【正确答案】 B 【试题解析】 栈是按 “先进后出 “的原则组织数据的,数据的插入和删除都在栈顶进行操作。 8 【正确答案】 C 【试题解析】 E R图转换成关系模型数据则是把图形分析出来的联系反映到数据库中,即设计出表,所以属于逻辑设计阶段。 9 【正确答案】 D 【试题解析】 自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,所以 B)错误。笛卡尔积是用 R集合中元素为第一元素, S 集合中元素为

29、第二元素构成的有序对,所以 C)错误。根据关系 T 可以很明显的看出是从关系 R与关系 S 中取得相同的关系组所以取得是交运算,选择 D。 10 【正确答案】 C 【试题解析】 学号是学生表 S 的主键,课号是课程表 C的主键,所以选课表 SC的关键字就应该是与前两个表能够直接联系且能唯一定义的学号和课号,所以选择 C。 11 【正确答案】 B 【试题解析】 C语言程序的模块化通过函数来体现 ,所以选择 B。 12 【正确答案】 A 【试题解析】 常量是指在程序运行过程中其值不能被改变的量 ,如 5、 1.0、 字符a等。 C语言的标识符分为 3类 :关键字、预定义标识符和用户标识符,常量不属

30、于标识符,所以选择 A。 13 【正确答案】 B 【试题解析】 C语言中的不等于符号用 “!=“表示 ,没有符号 “ “,所以选择B。 14 【正确答案】 C 【试题解析】 C语言规定 ,C语句必须以分号 “;“结束, C选项中没有结束符号 ,所以错误。 15 【正确答案】 C 【试题解析】 %f的输出格式是以带小数点的数学形式输出浮点数。首先计算x*1000,结果为 5168.94然后 +0.5,结果为 5169.44,然后进行强制类型转换 ,转换成整型为 5169,然后除以双精度数据 1000,结果也为双精度数据 5.169,输出时按照 %f 的格式输出,所以输出结果为 5.169000。

31、 16 【正确答案】 B 【试题解析】 scanf函数的一般形式为 scanf(格式控制 ,变量 1地址 ,变量 2地址 ,), 其中,格式字符串要与数据类型保持一致 ,所以格式字符串中应为 %lf,后面应该为变量地址 ,所以需要加上符号 “ break;后, a的值为 1,继续执行语句 case 2: a+; b+; break;a 的值为 2, b的值为 1。因此 C选项正确。 21 【正确答案】 B 【试题解析】 本题重点考察 for语句循环嵌套,首先 k=2,进行 一次循环后, k自增两次,变成 4,这时 s为 1。即当 k=4 的时候, s=1, j=4,执行内层循环,s=1+4,

32、j自增 1后等于 5, s=5+5, j再自增 1后即为 6,跳出内层循环。 k自增两次后等于 6,不成立,跳出外层循环。最后输出 s的值,即为 10。因此 B 选项正确。 22 【正确答案】 D 【试题解析】 本题考察 while语句, while语句的语义是:计算表达式的值,当值为真 (非 0)时, 执行循环体语句。 k=1 为赋值语句,即 k 的值等于 1。 while(k=1) = while(1) ,是死循环,执行无限次。因 此 A选项正确。 23 【正确答案】 A 【试题解析】 函数 fun 的功能是返回两个形参的和。调用函数 fun(x,y)时,将变量 x=6和 y=7 的值分别

33、传送变量 a和 b,并且通过语句 return a+b;将 13返回给主函数。继续调用函数 fun(13,z-),这里 z-指将 z的值参与运算后,再将 z的值减 1操作;将 13和 8分别传送变量 a和 b,且通过语句 return a+b;将 21返回给主函数。因此 A选项正确。 24 【正确答案】 C 【试题解析】 B 选项和 D选项是将数组作为函数参数; A选项是将指 针作为函数参数;因此 C选项正确。 25 【正确答案】 B 【试题解析】 本题通过语句 “p= 可得到 x=9+3=12,而后直接传入函数 funb,x=x+8-3=12+5=17。因此 C选项正确。 29 【正确答案】

34、 D 【试题解析】 本题考查函数的递归调用,执行 f(9)后, f(9)=9-(7-(5-(3-f(1) =7,所以答 案为 D选项。 30 【正确答案】 A 【试题解析】 本题考查字符数组的初始化, B 选项中字符数组没有字符串的结束标志所以错误。 C选项中字符串包含 6个字符,所以不能赋值在左边只能放 5个字符的字符串数组中。 D选项的指针 s没有赋初值,不能使用。所以选项 A正确。 31 【正确答案】 D 【试题解析】 本题考查字符串数组, s表示指向字符数组的指针, s指向了第一个字符串, s+指向了第二个字符串,所以最后输出结果为 D选项。 32 【正确答案】 B 【试题解析】 本题

35、考查字符串处理函数 strlen, strlen计算一个字符串的长度,包含结尾符,所以本题中 j的初始化应该是从最后一个字符开始,所以应该将得到的字符串长度减 1,选项 B 正确。 33 【正确答案】 B 【试题解析】 本题考查数组名作为函数参数,执行 f函数时,传进去的 a指针被重新指向了 b,所以原本 a数组的地址内容不变,所以输出结果为 ABCDE,答案为 B 选项。 34 【正确答案】 A 【试题解析】 本题考查静态局部变量,本题中先执行 fun(4,1)得到返回值为 8,此时静态局部变量 m为 8, i为 3,那么再次执行 fun(4,1)得 到的值为 17,所以选项 A正确。 35

36、 【正确答案】 B 【试题解析】 本题主要考查链表中节点的概念,属于基础知识。每个结点应该由两个成员组成:一个是整型的成员;一个是指向自身结构的指针类型成员。其中指针域应该是指向下个节点,所以答案为 B。 36 【正确答案】 A 【试题解析】 本题考查 typedef 的使用方法, typedef 对已存在的类型使用一个新的名字,选项 A中 ABC为新的类型别名,定义正确。 37 【正确答案】 C 【试题解析】 本题考查把数组名作为函数参数,执行 fun函数 后, s的值并没有发生变化,仍然是指向 a,所以输出结果为 1,选项 C正确。 38 【正确答案】 D 【试题解析】 本题考查 fput

37、c函数,该函数将字符 ch 写到文件指针 fp所指向的文件的当前写指针的位置。函数格式: int fputc (int n, File *fp)答案为 D选项。 39 【正确答案】 B 【试题解析】 本题考查宏定义,宏定义只是做个简单的替换,执行NUM=(N+1+1)*N+1/2=8,选项 B正确。 40 【正确答案】 D 【试题解析】 本题考查位运算中按位取反, 0按位取反就是 -1,所以选项 D正确。 二、程序填空题 41 【正确答案】 (1)ai (2)aj (3)aj 【试题解析】 填空 1: for循环语句循环体中将数组元素 ai赋值给变量 max和变量 min。 填空 2:通过一次

38、 for循环,找到数组中的最大值, if语句的条件表达式是 max aj。 填空 3:同理,此处 if 语句的条件表达式是 min aj。 三、程序修改题 42 【正确答案】 (1)while(*w) (2)if(*r=*p) 【 试题解析】 (1)此处要判断的是值的真假,而不是地址,所以改为 while(*w)。 (2)c语言中关键字区分大小写,只需运行程序,就可以根据错误提示找到。 四、程序设计题 43 【正确答案】 double fun(double eps) double s=0 0, s1=1 0; int n=1; while(sl =eps) *当某项大于精度要求时,继续求下一项 * s=s+s1; *求和 * s1=s1*n (2*n+1); *求 多项式的每一项 * n+; return 2*s; 【试题解析】 首先应该定义 double类型变量,并同赋初值,用来存放多项式的某一项和最后的总和。从第二项开始以后的每一项都是其前面一项乘以 n(2*n+1),程序中用 s1来表示每一项, s表示求和后的结果。需注意 s1和 s的初值都为 1 0,因为循环变量从第二项开始累加。

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1