全国计算机等级考试教程二级C语言答案 daan4.doc

全国计算机等级考试教程二级C语言答案 daan4.doc

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《全国计算机等级考试二级教程——C语言程序设计》习题分析与解答(四) 第九章 数组习题分析与解答 一、 选择题 9.1【参考答案】 D) 9.2【参考答案】 A) 9.3【参考答案】 A) 9.4【参考答案】 A) 9.5【参考答案】 C) 9.6【参考答案】 A) 9.7【参考答案】 B) 9.8【参考答案】 D) 9.9【参考答案】 C) 9.10【参考答案】 C) 9.11【参考答案】 C) 9.12【参考答案】 D) 9.13【参考答案】 D) 9.14【参考答案】 A) 9.15【参考答案】 A) 9.16【参考答案】 A) 9.17【参考答案】 C) 9.18【参考答案】 C) 二、 填空题 9.19【参考答案】 [1]9 [2]0 9.20【参考答案】 6 9.21【参考答案】 12 9.22【参考答案】 3 9.23【参考答案】 2721 9.24【参考答案】 -850,2,0 9.25【参考答案】 [1]k=p [2]k 9.26【参考答案】 [1] (c=getchar()) [2] c-′A′ 三、 上机题 9.27【分析与解答】  (1) 对于字符的输入可参考教材例6.3和习题9.26中的while循环,只是要注意,循环的终止条件是:等于′\[KG-*3]n′。 (2) 在while循环体中,用if条件来判断是否为数字字符,若是,就使对应的元素增1;if中的条件表达式可用C的库函数:isdigit(ch),这时要在程序前加:#include <ctype.h>行;也可用:ch>[KG-*3]=′0′&&ch<[KG-*3]=′9′。 (3) 若用num数组元素来进行统计,当ch中是数字“0”时,使num[0]增1、当ch中是数字 “1”时,使num[1]增1……num的下标表达式可用:ch-′0′。 (4) 注意,在定义数组时,数组的大小应符合使用的要求。在利用数组元素作为计数器时,不要忘记首先应该给数组元素赋0值。 (5) 总结:通过本题的编程,要求掌握利用数组元素作为计数器的基本算法。 9.28【分析与解答】 本题的编程请参考例9.8。 (1) 若有以下10个整数: 0 1 2 3 4 5 6 7 8 9 要求从第5个元素依次向前移,则移动之后的数列应该是: 0 1 2 4 5 6 7 8 9 第5个元素不是指下标为5的元素,而是指排列的顺序,对此数列而言是指数值为4的那个。 (2) 完成移动后,数列中的数据个数减1。 (3) 若进行指定操作的函数名为moves,则函数的首部可如下: void moves(int *a,int n,int *m) 这里a用以指向一维数组的首地址,n接受开始移动的元素的位置,m指向主函数中存放元素个数的变量,因为没有函数值返回,因此函数的类型定义为void。 (4) 可用以下for循环完成指定的移动: for(i=n-1;i<*m;i[KG-*3]+[KG-*3]+) a[i-1]=a[i]; 注意,应当先把第n个元素(下标为n-1)移到第n-1个元素(下标为n-2)的位置上,依次从前到后向前移动。 (5) 完成移动之后,应使m所指变量中的值减1,表示数列中的数据少了一个;这可由于句: *m=*m-1;来完成。 (6) 可设计一个输出函数,在移动前、后调用此函数输出数组中的数据,以便验证操作是否正确。若输出函数名为:outarr,则函数首部可写成: void outarr( int a[], int num) 形参a指向待输出的数组,num接受数组中元素的个数。输出操作可由一个for循环来完成: for(i=0; i<num; i[KG-*3]+[KG-*3]+) printf(″%d″,a[i]); printf(″\[KG-*3]n\[KG-*3]n″); 退出循环后的printf语句使上面的输出行结束。 (7) 在主函数中定义所需的数组和变量。数组中的值可以在主函数中输入,也可定义一个函数用于输入数据。n的值在主函数中输入,然后调用以上函数。需要注意的是,给n输入的值不能是1,因为第一个元素(下标为0)再向前移,下标就越界了,同时,n的值也不可大于10,因为已指定只有10个元素。 (8) 总结: ① 对于需要进行多次的操作,如本程序中输出数组元素中的值,应当编写一个独立的函数多次调用,而不应重复地编写代码。虽然该函数中只

文档评论(0)

asd522513656 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档