实验五 数组_2010

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五 数 组

[实验目的]

1、通过编程及上机调试,掌握数组类型的使用方法。

2、掌握字符数组的使用方法。

3、将数组灵活应用于程序设计中。

[实验内容与步骤]

1、计算、保存和输出Y i

Y X X i i i =+2522s i n()s i n () i=0,2,3,...,9

X i 由键盘输入。

2、某选举活动有五位候选人。候选人按1~5编号,投票工作是在选票上方标记出某位候选 人的编号即可。试编写一程序,使用数组变量count 保存并输出每位候选人的得票数。 如果所读取数为-1,读取选票结束;如果所读取数不在1~5的范围内,该选票被视作“废 票”, 程序应可以计算出废票数。

3、读入一串字符,以‘!’结束。分别统计其中数字0,1,2,...,9出现的次数。

4、输入一串字符,以‘?’结束。统计各字母出现的次数,并按字母出现的多少输出(先 输出次数多的,次数相同的按字母表顺序输出,不出现的字母不输出)。

例:输入 5B3aA+4-HDEH5DH?

输出 H 3

D 2

A 1

B 1

E 1

a 1

5、输入字符数组,剔除其中所有的字符‘c ’后再输出。

6、编写一个程序,输入两个字符串str1和str2,要求各串中无重复出现的字符,求两者的 交集。若该交集非空,则输出结果。

7、输出下列形式的杨辉三角形的前10行

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

8、输入下述8个国家名字的字符串:CHINA 、JAPAN 、KOREA 、INDIA 、CANADA 、 AMERICA 、ENGLAND 和FRANCE ,要求将这些国名按字典顺序排序。

[习题与思考题]

1、插入排序。以任意次序读入10个数。将第一个数放在数组A 的第一个元素中。以后与 已存入数组A 中的数进行比较,确定它在从小到大的排列中应处的位置。将该位置及其

后面的元素向后推移一个位置,将新读入的数据填入空出的位置中。这样在数组A中的数总是从小到大排列的。10个数据处理完后输出数组A。(其算法请参见流程图)2、有15个数存放在一个数组中,输入一个数,用折半查找法找出该数是数组中第几个元

素。若该数不在数组中,则打印出“No found”。

3、输入3行3列的矩阵A,然后(用函数实现各小题功能)

(1)输出矩阵A。

(2)将对角线之外的上三角形中的每个元素加1,下三角形中的每个元素减1,输出矩阵A。

(3)找出现在在矩阵A中最大的元素及其行、列位置。并输出。

(4)计算矩阵A的对角线上的元素之和。

(5)计算矩阵A的转置矩阵A T。(要求将A转置存放)

4、计算2个矩阵a(M行P列),b(P行N列)的乘积。

5、某班学生有若干人(不超过40人),期终共考5门课,每个学生的成绩按学号顺序存

入计算机。编程完成下列计算:

(1)求出每个学生的总分和平均分;

(2)每门课程的最高分,以及该得分学生的学号;

(3)统计各门课程成绩在60分以下学生所占的百分比。

6、编写一对函数实现互换日期表示法:nday(y,m,d)函数,将某年某月某日转换成这一年的

第几天;monday(y,n,mday)函数,将某年的第几天转换成这一年的某月某日,返回时mday[0]为月份数,mday[1]为这个月的第几天。

7、输入一字符数组,再输入一子字符数组,在前一字符数组中剔除所有的子字符数组后再

输出。

8、编程求解约瑟夫问题:M个人围成一圈,从第一个人开始报数,数到N的人出圈。再

由下一个人开始报数,数到N的人出圈。...印出依次出圈人的编号。M值预先选定,N 值由键盘输入。

例:M=8,N=5

依次出圈的是5、2、8、7、...

插入排序流程图

相关文档
最新文档