c语言程序设计实验教程数组作业,c语言上机实验报告 标准C语言程序设计实验四数组上机内容201512...

41528d3028836879cd698677c3999917.gifc语言上机实验报告 标准C语言程序设计实验四数组上机内容201512

c语言上机实验报告 标准C语言程序设计实验四数组上机内容201512 导读:就爱阅读网友为您分享以下“标准C语言程序设计实验四数组上机内容201512”的资讯,希望对您有所帮助,感谢您对的支持! 《标准C语言程序设计》上机报告 实验四 专业: 通信工程 班级: 通信1502 学号: 姓名: 邓平 完成日期: 12.18 一、 实验目的 1. 进一步掌握调试方法,按步骤熟悉学习指导讲义调试案例; 2. 掌握一维数组、二维数组的定义、初始化和引用; 3. 理解并掌握数组名和数组下标的含义,深入理解多维数组降维的概念; 4. 掌握字符串和数组的结合(存储和处理); 1 5. 掌握并熟练使用字符串处理库函数; 6. 熟悉数组的操作(矩阵等数学运算、顺序及二分法查找、设标签选择法及交换法排序等); 7. 了解数组下标越界的形式和后果。 二、 实验内容及要求(鼓励一题多解) 1. 深入理解《上机实践训练教程》2.5实验五案例示范和有关概念中对外部参照存储类型的数组和自动类数组还有static数组的内存空间的分配及其是否初 2. 运行《上机实践训练教程》P69实验五第11题,理解程序功能并指出其中排序是(冒泡/沉底)交换法还是设标签选择法,以及说明is_modified变量的作用? 用的是冒泡交换法, is_modified的使用主要是为了简化程序,使其运行的更快,即如果某次循环过后字符串已经按照规定排列就不用继续运行循环体可直接跳出。 3. 讨论《上机实践训练教程》实验五12题中出现的异常现象的理解及如何避免。(提示:跟踪12题把strcpy(str1,str2);改为strncpy(str1,str2,sizeof(str1)-1);看执行结果,比较两次的运行结果不同,分析原因) str1和str2 在内存中储存情况为 str1→ a a a b s c d \0 s d f g h 8 \0 f h 8 g h 8 \0 str2→ a g s d f a s d g h 8 \0 \0 f 4. 用交换法对输入的30个学生C语言机考成绩进行降序排列后输出前10名的成绩和姓名,要求交换法排序算法的外层循环变量分别从0和1编号两种方式实现。 5. 输入一组实数,按录入顺序保存进数组arr中,采用设标签的选择法对其排序。任意输入一数,直接在arr中将其按序插入相应位置并输出显示。(不允许使用其它数组来完成) 6. 输入一串字符(长度小于100),以’?’结束。统计各字母出现次数,按次数降序输出统计结果。(要求次数相同的按字母表顺序输出,不出现的字母不输出) 如: 输入:5B3A+4-HDEH5DH?要求:排序方法任选交换法和设标记的选择法中一种,不能用直接选择法 输出: H 3 D 2 A 1 B 1 E 1 7. 有15个数存放在一个数组中,输入一数,要求用折半查找法(二分法)找出该数是数组中第几个元素。若该数不在数组中,则输出“查无此数”。 【拓展】:15个人名存放在二维数组中,输入一个人名,二分法查找,确定是否存在 (排序均采用设标签选择法) 8. 统计某班3门课(英语、数学、计算机)考试成绩。要求能够输入考生人数,并按编号从小到大的顺序依次录入考生的成绩,再统计出每门课程全班平均分、最高分以及每个考生三门课平均分和最高分。 9. 【代码学习】:学习指导实用教程P16-4、5,写出你的理解(不少于200字)。 进制转化有如下几点值得注意 1.利用-‘0’将数字的ASCLL码值转化为数字本身的值。 2.能够确定输入字符位数及时终止循环。 3.对于int型变量的巧妙应用用于求十进制数的每一位,注意应从高位往低位求。 4.每一步程序设计都十分严谨 数组元素的倒复制 1.利用过渡数组和循环将原数组从尾部将内容复制给新数组,然后将新数组输出,即实现了字符数组中字符串逆序存放。 2.利用两个循环变量i,j,分别从数组的首尾两边开始标注,然后将其所标注的数组内容进行交换,当全部交换一次后就终止循环,再将数组输出。 10.调试习题五作业中编程题 三、 上机收获 1. 学会了灵活的使用数组,能将很多其他问题转化为数组问题解决。 2. 能够使用循环体来处理各类问题。 3. 对函数的定义和调用有了更深的理解。 百度搜索“就爱阅读”,专业资料,生活学习,尽在就爱阅读网,您的在线图书馆

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值